51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

SQLite 附加数据库

SQLite 附加数据库

假设这样一种情况,当在同一时间有多个数据库可用,您想使用其中的任何一个。SQLite的ATTACH DATABASE语句是用来选择一个特定的数据库,使用该命令后,所有的SQLite语句将在附加的数据库下执行。

语法

SQLite 的ATTACH DATABASE语句的基本语法如下:文章源自小柒网-https://www.yangxingzhen.cn/7040.html

ATTACH DATABASE file_name AS database_name;文章源自小柒网-https://www.yangxingzhen.cn/7040.html

如果数据库尚未被创建,上面的命令将创建一个数据库,如果数据库已存在,则把数据库文件名称与逻辑数据库 'Alias-Name' 绑定在一起。文章源自小柒网-https://www.yangxingzhen.cn/7040.html

实例

如果想附加一个现有的数据库testDB.db,则ATTACH DATABASE语句将如下所示:文章源自小柒网-https://www.yangxingzhen.cn/7040.html

[root@localhost ~]# sqlite3文章源自小柒网-https://www.yangxingzhen.cn/7040.html

SQLite version 3.7.17 2013-05-20 00:56:22文章源自小柒网-https://www.yangxingzhen.cn/7040.html

Enter ".help" for instructions文章源自小柒网-https://www.yangxingzhen.cn/7040.html

Enter SQL statements terminated with a ";"文章源自小柒网-https://www.yangxingzhen.cn/7040.html

sqlite> ATTACH DATABASE 'testDB.db' as 'TEST';文章源自小柒网-https://www.yangxingzhen.cn/7040.html

使用SQLite .database命令来显示附加的数据库。文章源自小柒网-https://www.yangxingzhen.cn/7040.html

sqlite> .database

seq name file


0 main

2 TEST /root/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 main is already in use
继续阅读 SQLite最后更新:2022-11-24

赞(1)
未经允许不得转载:工具盒子 » SQLite 附加数据库