SQLite Отсоединение базы данных
SQLiteDETACH DATABASE— оператор, используемый для отсоединения и освобождения именованной базы данных от соединения с базой данных, которое ранее было присоединено с помощью оператора ATTACH. Если один и тот же файл базы данных был присоединен под несколькими псевдонимами, команда DETACH отключит соединение только для указанного имени, а остальные останутся действительными. Вы не можете отсоединитьmainилиtempбазу данных.
Если база данных является базой данных в памяти или временной базой данных, база данных будет уничтожена, и ее содержимое будет потеряно.
Синтаксис
Базовый синтаксис оператора DETACH DATABASE 'Alias-Name' в SQLite выглядит следующим образом:
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'.
sqlite>.databases seq name file --- --------------- ---------------------- 0 main /home/sqlite/testDB.db 2 test /home/sqlite/testDB.dbДругие расширения