Latest web development tutorials

SQLite 附加數據庫

假設這樣一種情況,當在同一時間有多個數據庫可用,您想使用其中的任何一個。 SQLite的ATTACH DTABASE語句是用來選擇一個特定的數據庫,使用該命令後,所有的SQLite語句將在附加的數據庫下執行。

語法

SQLite 的ATTACH DATABASE 語句的基本語法如下:

ATTACH DATABASE 'DatabaseName' As 'Alias-Name';

如果數據庫尚未被創建,上面的命令將創建一個數據庫,如果數據庫已存在,則把數據庫文件名稱與邏輯數據庫'Alias-Name' 綁定在一起。

實例

如果想附加一個現有的數據庫testDB.db ,則ATTACH DATABASE語句將如下所示:

sqlite> ATTACH DATABASE 'testDB.db' as 'TEST';

使用SQLite.database命令來顯示附加的數據庫。

sqlite> .database
seq name file
--- --------------- ----------------------
0 main /home/sqlite/testDB.db
2 test /home/sqlite/testDB.db

數據庫名稱main和temp被保留用於主數據庫和存儲臨時表及其他臨時數據對象的數據庫。 這兩個數據庫名稱可用於每個數據庫連接,且不應該被用於附加,否則將得到一個警告消息,如下所示:

sqlite> ATTACH DATABASE 'testDB.db' as 'TEMP';
Error: database TEMP is already in use
sqlite> ATTACH DATABASE 'testDB.db' as 'main';
Error: database TEMP is already in use