SQLite 附加數(shù)據(jù)庫(kù)(ATTACH DATABASE)

考慮一種情況,當(dāng)您有多個(gè)可用數(shù)據(jù)庫(kù)并且想一次使用其中任何一個(gè)數(shù)據(jù)庫(kù)時(shí)。SQLite ATTACH DATABASE語(yǔ)句用于選擇特定的數(shù)據(jù)庫(kù),執(zhí)行此命令后,所有SQLite語(yǔ)句將在附加數(shù)據(jù)庫(kù)下執(zhí)行。

語(yǔ)法

以下是SQLite ATTACH DATABASE語(yǔ)句的基本語(yǔ)法。

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

如果尚未創(chuàng)建數(shù)據(jù)庫(kù),上述命令還將創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),否則它將僅將數(shù)據(jù)庫(kù)文件名附加到邏輯數(shù)據(jù)庫(kù)“別名”。

在線示例

如果要附加現(xiàn)有數(shù)據(jù)庫(kù)testDB.db,則ATTACH DATABASE語(yǔ)句如下-

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

使用SQLite.database命令顯示附加的數(shù)據(jù)庫(kù)。

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

數(shù)據(jù)庫(kù)名稱main和temp是為主數(shù)據(jù)庫(kù)和保留臨時(shí)表和其他臨時(shí)數(shù)據(jù)對(duì)象的數(shù)據(jù)庫(kù)保留的。 這兩個(gè)數(shù)據(jù)庫(kù)名稱對(duì)于每個(gè)數(shù)據(jù)庫(kù)連接都存在,并且不應(yīng)用于附件,否則您將收到以下警告消息。

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
丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清