SQLite Attach Database
Angenommen, es sind mehrere Datenbanken gleichzeitig verfügbar und Sie möchten eine beliebige davon verwenden. SQLitesATTACH DATABASE-Anweisung wird verwendet, um eine bestimmte Datenbank auszuwählen. Nach Verwendung dieses Befehls werden alle SQLite-Anweisungen unter der angehängten Datenbank ausgeführt.
Syntax
Die grundlegende Syntax der ATTACH DATABASE-Anweisung von SQLite lautet wie folgt:
ATTACH DATABASE file_name AS database_name;
Wenn die Datenbank noch nicht erstellt wurde, erstellt der obige Befehl eine Datenbank. Wenn die Datenbank bereits vorhanden ist, wird der Datenbankdateiname mit der logischen Datenbank 'Alias-Name' verknüpft.
Die geöffnete Datenbank und die mit ATTACH angehängte Datenbank müssen sich im selben Ordner befinden.
Beispiel
Wenn Sie eine vorhandene DatenbanktestDB.dbanhängen möchten, lautet die ATTACH DATABASE-Anweisung wie folgt:
sqlite> ATTACH DATABASE 'testDB.db' as 'TEST';
Verwenden Sie den SQLite.database-Befehl, um die angehängten Datenbanken anzuzeigen.
sqlite> .database seq name file --- --------------- ---------------------- 0 main /home/sqlite/testDB.db 2 test /home/sqlite/testDB.db
Die Datenbanknamenmainundtempsind für die Hauptdatenbank und die Datenbank reserviert, die temporäre Tabellen und andere temporäre Datenobjekte speichert. Diese beiden Datenbanknamen können für jede Datenbankverbindung verwendet werden und sollten nicht für das Anhängen verwendet werden, andernfalls erhalten Sie eine Warnmeldung, wie unten gezeigt:
sqlite> ATTACH DATABASE 'testDB.db' as 'TEMP'; Error: database TEMP is already in use sqlite> ATTACH DATABASE 'testDB.db' as 'main'; Error: database main is already in use;Weitere Erweiterungen