SQLite 分离数据库
SQLite的DETACH DTABASE语句是用来把命名数据库从一个数据库连接分离和游离出来,连接是之前使用ATTACH语句附加的。如果同一个数据库文件已经被附加上多个别名,DETACH 命令将只断开给定名称的连接,而其余的仍然有效。您无法分离main或temp数据库。
如果数据库是在内存中或者是临时数据库,则该数据库将被摧毁,且内容将会丢失。文章源自小柒网-https://www.yangxingzhen.cn/7041.html
语法
SQLite的DETACH DATABASE 'Alias-Name'语句的基本语法如下:文章源自小柒网-https://www.yangxingzhen.cn/7041.html
DETACH DATABASE 'Alias-Name';文章源自小柒网-https://www.yangxingzhen.cn/7041.html
在这里,'Alias-Name'与您之前使用ATTACH语句附加数据库时所用到的别名相同。文章源自小柒网-https://www.yangxingzhen.cn/7041.html
实例
假设在前面的章节中您已经创建了一个数据库,并给它附加了'test'和 'currentDB',使用.database命令,我们可以看到:文章源自小柒网-https://www.yangxingzhen.cn/7041.html
sqlite> .database文章源自小柒网-https://www.yangxingzhen.cn/7041.html
seq name file 文章源自小柒网-https://www.yangxingzhen.cn/7041.html
--- --------------- --------------------------------------文章源自小柒网-https://www.yangxingzhen.cn/7041.html
0 main 文章源自小柒网-https://www.yangxingzhen.cn/7041.html
2 TEST /root/testDB.db文章源自小柒网-https://www.yangxingzhen.cn/7041.html
3 currentDB /root/testDB.db
现在,让我们尝试把'currentDB'从testDB.db中分离出来,如下所示:
sqlite> DETACH DATABASE 'currentDB';
现在,如果检查当前附加的数据库,您会发现testDB.db仍与'test'和'main'保持连接。
sqlite> .database
seq name file
0 main
2 TEST /root/testDB.db
继续阅读
SQLite最后更新:2022-11-24