SQLite的 DETACH DTABASE 語句是用來把命名數(shù)據(jù)庫從一個數(shù)據(jù)庫連接分離出來,連接是之前使用 ATTACH 語句附加的跟衅。
如果同一個數(shù)據(jù)庫文件已經(jīng)被附加上多個別名孵睬,DETACH 命令將只斷開給定名稱的連接,而其余的仍然有效伶跷。您無法分離 main 或 temp 數(shù)據(jù)庫掰读。
SQLite 的 DETACH DATABASE 'Alias-Name' 語句的基本語法如下:
DETACH DATABASE 'Alias-Name';
前面我們已經(jīng)創(chuàng)建了一個數(shù)據(jù)庫,先給它附加了 'test' 和 'currentDB'叭莫,使用 .databases 命令蹈集,我們可以看到:
seq name file
--- --------------- ----------------------------------------------------------
0 main
2 TEST C:\Users\zxw-t540p\Desktop\SQLite_test\testDB.db
3 currentDB C:\Users\zxw-t540p\Desktop\SQLite_test\testDB.db
現(xiàn)在,我們把 'currentDB' 從 testDB.db 中分離出來雇初,如下所示:
sqlite> DETACH DATABASE 'currentDB';
再使用 .databases 檢查拢肆,'currentDB' 從 testDB.db 已經(jīng)中分離出來,'test' 和 'main' 仍然和 testDB.db 保持連接抵皱。
sqlite> .databases
seq name file
--- --------------- ----------------------------------------------------------
0 main
2 TEST C:\Users\zxw-t540p\Desktop\SQLite_test\testDB.db