English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

SQLite базовый учебник

SQLite продвинутый учебник

SQLite интерфейс программы

SQLite разделение базы данных (DETACH DATABASE)

Команда SQLite DETACH DATABASE используется для разрыва связи и取消 ассоциации названной базы данных с базой данных, которая была присоединена с помощью команды ATTACH. Если к одному и тому же файлу базы данных было добавлено несколько.alias, команда DETACH будет разорвать только связь с заданным именем,其余 подключений продолжат работать. Вы не можете разделитьmainилиtempБаза данных.

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

Грамматика

Вот базовая грамматика команды 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".

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