Riepilogo: in questo tutorial, imparerai come creare tabelle temporanee di SQL Server e come manipolarle in modo efficace.
Le tabelle temporanee sono tabelle che esistono temporaneamente sul server SQL.
Le tabelle temporanee sono utili per memorizzare i set di risultati immediati a cui si accede più volte.
Creazione di tabelle temporanee
SQL Server ha fornito due modi per creare tabelle temporanee tramite le istruzioniSELECT INTO
eCREATE TABLE
.,
Creare tabelle temporanee, utilizzo di istruzione SELECT INTO
Il primo modo per creare una tabella temporanea è quello di utilizzare il SELECT INTO
dichiarazione, come illustrato di seguito:
Code language: SQL (Structured Query Language) (sql)
Il nome della tabella temporanea inizia con un simbolo cancelletto (#
). Per esempio, l’istruzione seguente crea una tabella temporanea utilizzando il SELECT INTO
dichiarazione:
In questo esempio, abbiamo creato una tabella temporanea denominata #trek_products
con due colonne derivate dall’elenco di selezione del SELECT
istruzione., L’istruzione ha creato la tabella temporanea e popolato i dati dalla tabellaproduction.products
nella tabella temporanea.,
una Volta che si esegue l’istruzione, è possibile trovare il nome di tabella temporanea creata nel database di sistema denominato tempdb
, a cui si può accedere tramite SQL Server Management Studio utilizzando il seguente percorso del Database di Sistema > tempdb > Tabelle Temporanee, come mostrato nella seguente immagine:
Come si può vedere chiaramente dalla foto, la tabella temporanea, inoltre, consiste di una sequenza di numeri come postfix., Questo è un identificatore univoco per la tabella temporanea. Poiché più connessioni al database possono creare tabelle temporanee con lo stesso nome, SQL Server aggiunge automaticamente questo numero univoco alla fine del nome della tabella temporanea per distinguere tra le tabelle temporanee.
Crea tabelle temporanee usando l’istruzione CREATE TABLE
Il secondo modo per creare una tabella temporanea è usare l’istruzioneCREATE TABLE
:
Code language: SQL (Structured Query Language) (sql)
Questa istruzione ha la stessa sintassi della creazione di una tabella normale.,la tabella temporanea inizia con un simbolo cancelletto (#
)
Dopo aver creato la tabella temporanea, è possibile inserire i dati in questa tabella come una normale tabella:
naturalmente, è possibile eseguire una query di dati contro di essa entro la sessione corrente:
Code language: SQL (Structured Query Language) (sql)
Tuttavia, se si apre un’altra connessione e provare la query query di cui sopra, si ottiene il seguente errore:
Code language: SQL (Structured Query Language) (sql)
Questo è perché le tabelle temporanee sono accessibili solo all’interno della sessione che li ha creati.,
Tabelle temporanee globali
A volte, è possibile creare una tabella temporanea accessibile attraverso le connessioni. In questo caso, è possibile utilizzare tabelle temporanee globali.
A differenza di una tabella temporanea, il nome di una tabella temporanea globale inizia con un doppio simbolo hash (##
).
Le seguenti istruzioni creano prima una tabella temporanea globale denominata ##heller_products
e quindi popolano i dati dalla tabella production.products
in questa tabella:
Ora è possibile accedere alla tabella ##heller_products
da qualsiasi sessione.,
Eliminazione di tabelle temporanee
Rimozione automatica
SQL Server elimina automaticamente una tabella temporanea quando si chiude la connessione che l’ha creata.
SQL Server elimina una tabella temporanea globale una volta chiusa la connessione che l’ha creata e completate le query su questa tabella da altre connessioni.,
l’Eliminazione Manuale
Dalla connessione in cui la tabella temporanea creata, è possibile rimuovere manualmente la tabella temporanea utilizzando il DROP TABLE
dichiarazione:
Code language: SQL (Structured Query Language) (sql)
In questo tutorial, hai imparato ad usare le tabelle temporanee di SQL Server e come creare e rimuovere in modo efficace.