SQLite-DETACHデータベース
SQLite DETACH DATABASEステートメントは、ATTACHステートメントを使用して以前に接続されたデータベース接続から名前付きデータベースをデタッチおよび分離するために使用されます。同じデータベースファイルが複数のエイリアスで添付されている場合、DETACHコマンドは指定された名前のみを切断し、残りの添付ファイルは引き続き続行されます。を切り離すことはできませんmain または temp データベース。
データベースがメモリ内データベースまたは一時データベースの場合、データベースは破棄され、内容は失われます。
構文
以下は、SQLite DETACH DATABASE'Alias-Name 'ステートメントの基本的な構文です。
DETACH DATABASE 'Alias-Name';
ここで、「Alias-Name」は、ATTACHステートメントを使用してデータベースを接続するときに使用したものと同じエイリアスです。
例
前の章で作成し、「test」と「currentDB」を使用して添付したデータベースがあるとします。 .database コマンド。
sqlite>.databases
seq name file
--- --------------- ----------------------
0 main /home/sqlite/testDB.db
2 test /home/sqlite/testDB.db
3 currentDB /home/sqlite/testDB.db
次のコマンドを使用して、testDB.dbから「currentDB」をデタッチしてみましょう。
sqlite> DETACH DATABASE 'currentDB';
ここで、現在の添付ファイルを確認すると、testDB.dbがまだ「test」および「main」に接続されていることがわかります。
sqlite>.databases
seq name file
--- --------------- ----------------------
0 main /home/sqlite/testDB.db
2 test /home/sqlite/testDB.db