Quando usi SQLite, puoi usare ATTACH DATABASE
istruzione per aggiungere un file di database alla connessione al database corrente.
Quando si esegue questa operazione, si allega un nome di file di database e si fornisce un nome per il database. Se il file esiste verrà allegato con il nome scelto, altrimenti verrà creato e allegato con il nome scelto.
Esempio
ATTACH DATABASE 'Pets.db' AS Pets;
Questo esempio causa il Pets.db
file di database da allegare e denominato Pets
.
Puoi usare .databases
per verificare che sia stato allegato.
.databases
Risultato:
main: /Users/Shared/Pets.db Pets: /Users/Shared/Pets.db
In questo caso, avevo precedentemente aggiunto questo database in main
, quindi lo stesso file di database è ora allegato con due nomi diversi.
Il nome è il nome del database utilizzato internamente da SQLite.
Staccare un database
Puoi usare DETACH DATABASE
per staccare un database dalla connessione corrente. Questo non elimina il file di database, rimuove semplicemente il database dalla tua connessione.
DETACH DATABASE Pets;
Ricontrolla:
.databases
Risultato:
main: /Users/Shared/Pets.db
Tieni presente che non puoi scollegare main
(o temp
) banche dati. Se provi a farlo, probabilmente riceverai questo errore:
sqlite> DETACH DATABASE main;
Error: cannot detach database main
Espressioni
Il ATTACH DATABASE
la sintassi specifica che il nome del file fornito è in realtà un'espressione. Puoi fornire un valore letterale o un'espressione.
La sintassi per le espressioni è piuttosto complessa ed è descritta nella documentazione di SQLite se sei interessato.