Оператор 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».