Kaltaisesi lukijat auttavat tukemaan MUO: ta. Kun teet ostoksen käyttämällä sivustollamme olevia linkkejä, voimme ansaita kumppanipalkkion. Lue lisää.

SQL Server temp -taulukot tallentavat tiedot väliaikaisesti. Voit suorittaa samat toiminnot, kuten SELECT, INSERT, DELETE ja UPDATE, väliaikaisessa taulukossa kuin tavallisessa SQL-taulukossa.

Temp-taulukot sijaitsevat tempdb-tietokannassa ja ovat näkyvissä vain yhteyden keston aikana. Kun katkaiset yhteyden, SQL Server poistaa tilapäisen taulukon. Voit myös poistaa sen milloin tahansa.

SQL Server Temp Tables -tyypit

SQL Serverin temptaulukoita on kahdenlaisia: paikallisia ja globaaleja.

Paikallinen lämpötilataulukko

Paikallinen temptaulukko näkyy vain sen luoneelle yhteydelle. Kun yhteys katkeaa tai käyttäjä katkaisee yhteyden SQL Server esimerkiksi paikallinen temp-taulukko pudotetaan automaattisesti.

Jos haluat luoda paikallisen väliaikaistaulukon, käytä yhtä tiivistemerkkiä (#) taulukon nimen alussa CREATE TABLE -käskyn kanssa. Tässä on syntaksi.

instagram viewer
LUODAPÖYTÄ#TempTable (
Sarake 1 INT,
Sarake 2 VARCHAR(50)
);

Esimerkiksi seuraava koodi luo väliaikaisen taulukon nimeltä TempCustomer, jossa on nimi ja sähköpostiosoite.

LUODAPÖYTÄ#TempCustomer (
ID int EI NULL ENSISIJAINEN AVAIN
Koko nimi VARCHAR(50),
Sähköposti VARCHAR(50)
);

Globaali lämpötilataulukko

Yleinen temptaulukko on väliaikainen taulukko, joka näkyy kaikille yhteyksille ja käyttäjille. SQL Server pudottaa sen, kun kaikki taulukkoon viittaavat yhteydet ja käyttäjät ovat katkaistu.

Jos haluat luoda yleisen tilapäisen taulukon, liitä taulukon nimen eteen kaksoistiiviste (##) ja käytä CREATE TABLE -käskyä.

LUODAPÖYTÄ##TempTable (
Sarake 1 INT,
Sarake 2 VARCHAR(50)
);

Seuraava koodi luo globaalin temp-taulukon nimeltä TempCustomer.

LUODAPÖYTÄ##TempCustomer (
ID int EI NULL ENSISIJAINEN AVAIN
Koko nimi VARCHAR(50),
Sähköposti VARCHAR(50)
);

Tämä koodi on samanlainen kuin paikallisen temp-taulukon esimerkki, vain kaksi hash-symbolia yhden sijasta. Nyt voit käyttää tavallisia SQL-komentoja lisätäksesi tai muokataksesi tietoja temp-taulukossa.

Temp-taulukon pudottaminen

SQL Server -ilmentymä pudottaa automaattisesti temptaulukon, kun kaikki siihen viittaavat käyttäjät ovat katkaisseet yhteyden. Paras käytäntö on, että tempdb-muistin vapauttamiseksi sinun tulisi aina nimenomaisesti pudottaa temp-taulukot.

Pudottaaksesi tilapäisen taulukon, käytä DROP TABLE IF EXISTS -käskyä ja sen jälkeen tilapäisen taulukon nimeä.

Näin pudotat #TempCustomer-taulukon:

PUDOTAPÖYTÄJOSOLEMASSA#TempCustomer

Käytä samaa koodia, mutta vaihda taulukon nimi pudottaaksesi globaalin temp-taulukon.

PUDOTAPÖYTÄJOSOLEMASSA##Tempasiakas

SQL Temp -taulukoiden tyypilliset käyttötavat

Temp-taulukot ovat hyödyllisiä, kun haluat tallentaa monimutkaisten kyselyiden välituloksia, joita sinun on käsiteltävä edelleen. Esimerkiksi kun luot raportteja, saatat joutua luomaan väliaikaisia ​​taulukoita useiden tietokantojen kyselytulosten tallentamiseksi. Tämän jälkeen voit luoda lopullisen raportin suorittamalla kyselyn väliaikaisia ​​taulukoita vastaan.

Toinen tilanne, jossa väliaikaiset taulukot ovat hyödyllisiä, on silloin, kun tarvitset kyselytuloksia yhdestä taulukosta toisen kyselyn suorittamiseen. Voit tallentaa tulokset tilapäiseen taulukkoon ja viitata siihen sitten uudessa kyselyssäsi. Käytät pohjimmiltaan temp-taulukkoa työ- tai puskuritaulukkona tietyn tehtävän suorittamiseen tarvittavien tietojen säilyttämiseen.

Temp-taulukoiden käyttäminen SQL Serverissä

Voit käyttää SQL Server temp -taulukoita tietojen tallentamiseen ja käsittelyyn väliaikaisesti. Temp-taulukoita on kahdenlaisia, paikallisia ja globaaleja. Paikallinen temptaulukko näkyy yhteydelle, jossa se on luotu, kun taas yleinen temptaulukko näkyy kaikissa yhteyksissä.

Temp-taulukot tuhoutuvat automaattisesti, kun katkaiset yhteyden palvelinesiintymään. Muista kuitenkin säästää ne pudottamalla ne aina käytön jälkeen.