Зачем конвертировать SQL в DB?
Файл .sql - это текстовый скрипт с операторами SQL и определениями схем, а не сама база данных. .db - это бинарная база данных SQLite 3, к которой приложения могут обращаться напрямую. Конвертацию выполняют для получения автономной переносимой базы данных для встраивания в приложение или распространения без сервера.
Способы конвертации SQL в DB
DB Browser for SQLite FREE
Перейдите в File > Import > Database from SQL file, выберите ваш .sql, и DB Browser выполнит инструкции и сохранит результат как .db.
DBeaver FREE
Создайте подключение SQLite, указывающее на новый файл .db, откройте .sql в редакторе SQL, затем выберите Execute SQL Script.
sqlite3 OPEN-SOURCE
Запустите sqlite3 new.db < file.sql в терминале, чтобы создать .db за один шаг.
Программы, которые конвертируют SQL
Об этих форматах
Файл SQL - это текстовый файл, содержащий команды SQL: определения схем, инструкции INSERT или запросы. Откройте его в любом текстовом редакторе для чтения; чтобы использовать его,…
Открыть детали .SQL →Файл .db - это почти всегда база данных SQLite, формат одного файла, используемый приложениями Android, браузерами и настольными программами для хранения данных. Откройте его с помощью…
Открыть детали .DB →Качество и на что обратить внимание
- Несоответствие диалектов - основная проблема: дампы MySQL используют
AUTO_INCREMENT, кавычки-бэктики и предложенияENGINE=InnoDB, которые SQLite отклоняет. - Хранимые процедуры и события не поддерживаются в SQLite - эти операторы вызовут ошибки и должны быть удалены перед импортом.
- Стандартные операторы
CREATE TABLEиINSERTпереносятся чисто; специфичный для MySQL/PostgreSQL синтаксис должен быть предварительно заменен эквивалентами SQLite.
Часто задаваемые вопросы
Будет ли дамп MySQL работать с SQLite?
AUTO_INCREMENT, идентификаторы в бэктиках и предложения ENGINE=InnoDB, которые SQLite не понимает; отредактируйте или удалите их перед импортом.Можно ли сразу использовать полученный файл .db в приложениях?
.db является стандартным бинарным файлом SQLite 3, который любая библиотека или приложение, совместимое с SQLite, может открыть напрямую.Что делать, если при импорте возникают ошибки?
.sql в текстовом редакторе, найдите строку с ошибкой, удалите или замените неподдерживаемый синтаксис, затем повторите импорт.Можно ли конвертировать только часть дампа?
CREATE TABLE и INSERT в новый файл и запустите только этот подмножество в SQLite.