考虑这样一种情况,当在同一时间有多个数据库,想使用其中的任何一个。 SQLite的ATTACH DTABASE语句是用来选择一个特定的数据库,使用命令后,所有的SQLite语句将被执行附加的数据库下。
语法:
SQLite 的 ATTACH DATABASE语句的基本语法如下:
ATTACH DATABASE 'DatabaseName' As 'Alias-Name';
上述命令将创建一个数据库的情况下数据库已经建立,否则它将只是附加数据库文件名与逻辑数据库 ‘Alias-Name’.
例子:
如果想附加一个现有数据库testDB.db,然后附上DATABASE语句将如下:
sqlite> ATTACH DATABASE 'testDB.db' as 'TEST';
使用SQLite数据库命令显示附加的数据库。
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