När du använder SQLite kan du använda ATTACH DATABASE
för att lägga till en databasfil till den aktuella databasanslutningen.
När du gör detta bifogar du ett databasfilnamn och anger ett namn för databasen. Om filen finns bifogas den med ditt valda namn, annars skapas och bifogas den med ditt valda namn.
Exempel
ATTACH DATABASE 'Pets.db' AS Pets;
Det här exemplet orsakar Pets.db
databasfil som ska bifogas och kallas Pets
.
Du kan använda .databases
för att kontrollera att den har fästs.
.databases
Resultat:
main: /Users/Shared/Pets.db Pets: /Users/Shared/Pets.db
I det här fallet hade jag tidigare lagt till den här databasen under main
, så samma databasfil bifogas nu under två olika namn.
Namnet är namnet på databasen som används internt av SQLite.
Koppla bort en databas
Du kan använda DETACH DATABASE
för att koppla bort en databas från den aktuella anslutningen. Detta tar inte bort databasfilen, det tar bara bort databasen från din anslutning.
DETACH DATABASE Pets;
Kontrollera igen:
.databases
Resultat:
main: /Users/Shared/Pets.db
Observera att du inte kan koppla bort main
(eller temp
) databaser. Om du försöker göra det kommer du sannolikt att få det här felet:
sqlite> DETACH DATABASE main;
Error: cannot detach database main
Uttryck
ATTACH DATABASE
syntax anger att filnamnet du anger faktiskt är ett uttryck. Du kan ange ett bokstavligt värde eller ett uttryck.
Syntaxen för uttryck är ganska komplex och beskrivs i SQLite-dokumentationen om du är intresserad.