SQLite - ฐานข้อมูล DETACH

SQLite DETACH DATABASEคำสั่งใช้เพื่อแยกและแยกฐานข้อมูลที่มีชื่อออกจากการเชื่อมต่อฐานข้อมูลซึ่งแนบมาก่อนหน้านี้โดยใช้คำสั่ง ATTACH หากมีการแนบไฟล์ฐานข้อมูลเดียวกันโดยมีหลายนามแฝงคำสั่ง DETACH จะตัดการเชื่อมต่อเฉพาะชื่อที่กำหนดและไฟล์แนบที่เหลือจะยังคงดำเนินต่อไป คุณไม่สามารถถอดไฟล์main หรือ temp ฐานข้อมูล

หากฐานข้อมูลเป็นฐานข้อมูลในหน่วยความจำหรือฐานข้อมูลชั่วคราวฐานข้อมูลจะถูกทำลายและเนื้อหาจะสูญหาย

ไวยากรณ์

ต่อไปนี้เป็นไวยากรณ์พื้นฐานของคำสั่ง 'นามแฝง - ชื่อ' ฐานข้อมูล SQLite DETACH

DETACH DATABASE 'Alias-Name';

ที่นี่ 'นามแฝง - ชื่อ' เป็นนามแฝงเดียวกับที่คุณใช้ในขณะที่แนบฐานข้อมูลโดยใช้คำสั่ง ATTACH

ตัวอย่าง

พิจารณาว่าคุณมีฐานข้อมูลซึ่งคุณสร้างไว้ในบทก่อนหน้านี้และแนบมาด้วย 'test' และ 'currentDB' ตามที่เราเห็นโดยใช้ .database คำสั่ง

sqlite>.databases
seq  name             file
---  ---------------  ----------------------
0    main             /home/sqlite/testDB.db
2    test             /home/sqlite/testDB.db
3    currentDB        /home/sqlite/testDB.db

ลองแยก 'currentDB' ออกจาก testDB.db โดยใช้คำสั่งต่อไปนี้

sqlite> DETACH DATABASE 'currentDB';

ตอนนี้ถ้าคุณจะตรวจสอบไฟล์แนบปัจจุบันคุณจะพบว่า testDB.db ยังคงเชื่อมต่อกับ 'test' และ 'main'

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