Учебники

SQLite — база данных DETACH

Оператор SQLite DETACH DATABASE используется для отсоединения и отсоединения именованной базы данных от соединения с базой данных, которое ранее было присоединено с помощью оператора ATTACH. Если один и тот же файл базы данных был присоединен с несколькими псевдонимами, команда DETACH отключит только указанное имя, а остальная часть вложения все равно продолжится. Вы не можете отсоединить основную или временную базы данных.

Если база данных является оперативной или временной, база данных будет уничтожена, а ее содержимое потеряно.

Синтаксис

Ниже приведен основной синтаксис оператора SQLite DETACH DATABASE «Alias-Name».

DETACH DATABASE 'Alias-Name';

Здесь «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».