Поиск по сайту:

Как использовать браузер БД для SQLite в Linux


Браузер БД для SQLite позволяет просматривать и редактировать базы данных SQLite в Linux. Вы можете проектировать, создавать и редактировать эти файлы базы данных, а также заглядывать внутрь других приложений. Вот как использовать этот графический интерфейс SQLite.

Проект базы данных SQLite

Библиотека и инструменты базы данных SQLite — это феноменально успешный проект базы данных с открытым исходным кодом на языке структурированных запросов (SQL). На самом деле он настолько успешен, что по праву может называть себя самым широко используемым ядром базы данных в мире.

С момента своего первого выпуска в 2000 году SQLite получил ошеломляющее распространение. Он есть в каждом телефоне iPhone и Android, а также в компьютере с Windows 10 или Mac. Он также есть в каждом интернет-браузере, включая Chrome, Firefox и Safari, а также во множестве других приложений.

Невероятный охват базы данных SQLite обусловлен ее архитектурой. Это быстрая и легкая библиотека, которая встроена (или связана, говоря языком разработчиков) в других приложениях. Механизм базы данных становится неотъемлемой частью продукта. Это означает, что вам не нужно предоставлять внешний сервер базы данных SQL, например MySQL, MariaDB или Microsoft SQL Server.

SQLite также имеет инструмент командной строки для управления базами данных, но именно библиотека сделала его триумфальным. Спрятанное внутри вашего приложения мощное автономное ядро базы данных устраняет множество проблем. Это упрощает процедуры установки вашего приложения и снижает минимальные требования к оборудованию для вашего приложения.

Кроме того, поскольку SQLite использует один кроссплатформенный файл для своих таблиц базы данных, индексов и схем, всю базу данных можно перенести на другой компьютер. Вы даже можете переместить его на машину с другой операционной системой, скопировав один файл.

На самом деле, формат файла базы данных SQLite настолько хорошо известен, что является одним из немногих, рекомендованных Библиотекой Конгресса для долгосрочного хранения данных.

Однако, поскольку SQLite — это библиотека для разработчиков, для нее нет внешнего интерфейса, то есть графического пользовательского интерфейса. Это приложение, использующее библиотеку, предоставляющую пользовательский интерфейс. Утилита командной строки может работать в интерактивном режиме, но она все равно не является графическим интерфейсом.

Браузер БД для SQLite (DB4S) отлично подходит для этих целей. Это визуальный инструмент, разработанный другим проектом с открытым исходным кодом, позволяющий создавать базы данных SQLite и управлять ими из графического интерфейса.

Браузер БД для SQLite

Браузер БД для SQLite существует (в том или ином воплощении) с 2003 года и претерпел несколько изменений названия. Раньше он назывался SQLite Browser, но это вызывало путаницу. Люди думали, что это было написано командой SQLite, и поэтому перенаправляли запросы функций и запросы поддержки о DB4S в SQLite.

Итак, SQLite Browser был переименован в DB Browser для SQLite. Вы все еще будете видеть ссылки на старое имя здесь и там. На самом деле веб-сайт проекта по-прежнему использует sqlitebrowser в качестве своего домена, и старое имя также используется при установке DB4S.

С DB4S вы можете:

  • Создание баз данных.
  • Импорт и экспорт схем баз данных, таблиц и данных в формате SQL.
  • Импорт и экспорт таблиц и данных в формате CSV.
  • Создавать, редактировать и удалять таблицы и индексы.
  • Добавлять, редактировать и удалять записи.
  • Просмотр и поиск записей базы данных.
  • Редактировать и выполнять команды SQL. Вы можете убедиться, что команда делает то, что вы думаете, прежде чем жестко закодировать SQL в своем приложении.

Установка браузера БД для SQLite

Чтобы установить DB4S в Ubuntu, используйте следующую команду (опять же, обратите внимание, что установка по-прежнему использует старое имя):

sudo apt-get install sqlitebrowser

В Fedora вы вводите:

sudo dnf install sqlitebrowser

В Manjaro мы используем pacman:

sudo pacman -Sy sqlitebrowser

Импорт базы данных из файла SQL

Когда DB4S запускается, в нее не загружена база данных. Мы рассмотрим два способа импорта определений таблиц данных и базы данных, а также способы создания собственной базы данных.

Иногда вам могут предоставить или отправить файл дампа базы данных в формате SQL. Он содержит инструкции, необходимые для повторного создания базы данных и вставки ее данных в базу данных.

Другим распространенным форматом, используемым для импорта определений таблиц и данных, является формат значений, разделенных запятыми (CSV). Вы можете использовать сайт генерации данных, такой как Database Test Data, для создания фиктивных данных для практических целей. Затем вы можете экспортировать свои данные в формате SQL или CSV.

Ниже приведен файл SQL, который мы создали на этом сайте. После того, как он был экспортирован, мы его отредактировали и добавили строку вверху файла, необходимую для SQLite:

BEGIN TRANSACTION;

Затем мы сохранили файл. В DB4S мы нажимаем Файл > Импорт > База данных из файла SQL.

Откроется диалоговое окно выбора файла, чтобы мы могли выбрать наш файл SQL. В нашем примере он называется «database_dump.sql» и находится в корне нашего домашнего каталога.

Выбрав файл, мы нажимаем «Открыть», и открывается диалоговое окно сохранения файла. Теперь вам нужно назвать вашу новую базу данных и решить, где ее сохранить. Мы назвали наш «geekbase.sqlite3» и сохранили его в нашем домашнем каталоге.

Нажмите «Сохранить», когда будете готовы продолжить. Мы идентифицировали наш исходный файл SQL и назвали нашу новую базу данных, поэтому теперь можно начать процесс импорта. После его завершения вы увидите диалоговое окно уведомления ниже.

Поскольку мы добавили таблицы и данные в базу данных, нам предлагается сохранить эти изменения, поэтому мы нажимаем «Сохранить», чтобы сделать это.

В главном окне DB4S теперь будет отображаться структура нашей базы данных.

Созданы две таблицы, хотя в файле SQL было определение только для одной. Это связано с тем, что поле «id» было определено как поле с автоинкрементом. Он будет добавляться автоматически всякий раз, когда в базу данных добавляется новая запись. SQLite создает таблицу для отслеживания автоматически увеличивающихся полей.

Щелкните вкладку «Обзор данных», чтобы просмотреть недавно добавленные записи.

Конечно, мощь базы данных заключается в ее способности искать и извлекать записи. В базе данных с поддержкой SQL мы используем для этого язык SQL. Для начала вкладка «Выполнение SQL».

Мы добавили следующую команду SQL:

SELECT * FROM account_details WHERE last_name LIKE "%ll%" ORDER BY state

Это будет искать людей с двойной буквой «l» в фамилии, а результаты будут отсортированы по штатам. Нажмите синюю стрелку (она выглядит как кнопка «Воспроизвести»), чтобы запустить команду SQL. Результаты отображаются в нижней панели.

У нас есть четыре записи, которые содержат двойную букву «l» в фамилии, и они отсортированы в алфавитном порядке по штатам, от Аризоны до Висконсина.

Импорт таблицы базы данных из файла CSV

Мы также можем импортировать таблицы из подходящих файлов CSV. Самый удобный способ сделать это — указать имена полей таблицы в CSV-файле в качестве первой строки текста. Ниже приведен небольшой фрагмент CSV-файла.

Первая строка содержит имена полей: first_name, last_name, created, email, state и ID. Другие строки содержат значения данных для каждой записи, которая будет добавлена в таблицу. Это те же данные, что и раньше; изменился только формат файла.

Когда вы импортируете данные CSV, вам нужно создать пустую базу данных, чтобы вам было во что их импортировать. Для этого нажмите «Новая база данных» на панели инструментов.

Откроется диалоговое окно сохранения файла. Назовите вашу новую базу данных и решите, где ее сохранить. Мы собираемся назвать наш «howtogeek.sqlite3» и сохранить его в нашем домашнем каталоге.

Когда появится диалоговое окно «Редактировать определение таблицы», нажмите «Отмена». Вернувшись в главное окно DB4S, щелкните Файл > Импорт > Таблица из файла CSV. Откроется диалоговое окно выбора файла, в котором вы можете выбрать файл CSV.

В нашем примере он называется «users.csv» и находится в корне нашего домашнего каталога. Нажмите «Открыть», и появится диалоговое окно предварительного просмотра, показывающее, как DB4S будет интерпретировать данные CSV.

Имя файла используется как имя таблицы. Вы можете отредактировать это, если хотите, просто убедитесь, что вы установили флажок рядом с «Имена столбцов в первой строке».

Нажмите «ОК» (она за пределами экрана на изображении выше). Данные будут импортированы, и, если все в порядке, вы должны увидеть диалоговое окно «Импорт завершен»; нажмите «ОК».

Нажмите «Просмотреть данные», и вы увидите импортированные данные.

Тем не менее, у нас все еще есть небольшая поправка. Перейдите на вкладку «Структура базы данных», выберите имя таблицы и нажмите «Изменить таблицу» на панели инструментов.

В диалоговом окне «Редактировать определение таблицы» установите флажок «AI» (автоинкремент) в поле «id».

Флажок «PK» (первичный ключ) устанавливается автоматически; нажмите «ОК». Это устанавливает автоматическое увеличение поля «id». Теперь мы можем добавить новую запись в базу данных, чтобы убедиться, что она работает.

Перейдите на вкладку «Выполнение SQL», а затем введите следующий SQL в верхней панели (обратите внимание, что мы предоставляем значения для всех полей, кроме «id»):

INSERT INTO "users" 
("first_name","last_name","created","email","state")
VALUES ('Dave','McKay','12/08/2020','dave@llk.com','Idaho');

Нажмите синюю стрелку (которая выглядит как кнопка «Воспроизвести»), чтобы запустить команду SQL. Нажмите «Обзор данных» и прокрутите вниз. Вы должны увидеть свою недавно добавленную запись с автоматически предоставленным полем «id», содержащим значение, которое на единицу выше, чем предыдущее самое высокое значение «id».

Создание базы данных вручную

Если у вас нет файла SQL или CVS для импорта, вам придется создать базу данных вручную. Чтобы начать, нажмите «Новая база данных», и появится диалоговое окно сохранения файла. Введите имя вашей новой базы данных и место, где вы хотите ее сохранить.

Мы назвали наш «geeksrock.sqlite3» и сохранили его в каталоге «Документы». После того, как вы назовете свою базу данных и перейдете к месту, в котором хотите ее сохранить, нажмите «Сохранить».

Когда вас попросят подтвердить ваш выбор, нажмите «Сохранить» еще раз.

Появится диалоговое окно «Редактировать определение таблицы». Назовите свою новую таблицу (мы назвали нашу «орлы»), а затем нажмите «Добавить поле». Теперь вы можете ввести имя поля и выбрать тип информации, которую оно будет содержать, в раскрывающемся меню «Тип».

Мы добавили текстовое поле для хранения имени орла и реальное числовое поле (с плавающей запятой) для хранения размаха крыльев.

Флажки и другие параметры рядом с каждым полем позволяют добавить следующие варианты поведения:

  • NN (Not Null): если этот параметр установлен, поле нельзя оставлять пустым. Если вы попытаетесь добавить запись, не указав значение для этого поля, она будет отклонена.
  • PK (первичный ключ): поле (или группа полей), предоставляющее уникальный идентификатор для записей в таблице. Это может быть простое числовое значение, подобное автоматически увеличивающимся целочисленным полям, которые мы рассмотрели выше. Однако в таблице учетных записей пользователей это может быть имя пользователя. В таблице может быть только один первичный ключ.
  • ИИ (автоматическое увеличение): числовые поля могут автоматически заполняться следующим по величине неиспользуемым значением. Мы использовали это в поле «id» в примере, который мы рассмотрели выше.
  • U (уникальный): это поле в каждой записи должно содержать уникальное значение, то есть в этом поле в таблице не может быть дубликатов.
  • По умолчанию. Будет предоставлено значение по умолчанию, если добавляется запись, не имеющая значения в этом поле.
  • Проверка. Проверка поля может выполняться при добавлении записи. Например, вы можете проверить, содержит ли значение в поле номера телефона не менее 10 символов.
  • Сортировка: Sqlite может использовать различные методы сравнения строк. По умолчанию используется BINARY. Другими параметрами являются NOCASE, нечувствительные к регистру, и RTRIM, игнорирующие пробелы в конце. В большинстве случаев можно оставить значение по умолчанию.
  • Внешний ключ. Поле или группа полей в записи, которые должны соответствовать ключу в другой таблице. Например, в базе данных инструментов для мастерских у вас может быть таблица отдельных инструментов и другая таблица категорий инструментов. Если категории инструментов молоток, гаечный ключ и отвертка, вы не можете добавить запись типа зубило.

Нажмите «ОК» после того, как добавите нужные поля. После создания базы данных и добавления первой таблицы вы можете добавить некоторые записи.

На вкладке «Выполнение SQL» мы несколько раз использовали оператор SQL INSERT, чтобы добавить некоторые записи в таблицу.

Мы также можем использовать вкладку «Обзор данных», чтобы увидеть наши новые записи.

Если вы предпочитаете добавлять новые записи через пользовательский интерфейс, нажмите «Новая запись» на панели инструментов. Затем вы можете ввести значения для новой записи, не зная SQL.

Базы данных других приложений

Вы также можете использовать DB4S для просмотра баз данных SQLite, принадлежащих другим приложениям. Изучение структуры или содержимого других баз данных может быть поучительным (или просто интересным). Однако важно не вносить изменения в базы данных, принадлежащие другим приложениям, иначе вы можете негативно повлиять на работу этого приложения.

Давайте посмотрим на одну из баз данных SQLite, которую создает и поддерживает Firefox. Нажмите «Открыть базу данных» на панели инструментов, и появится диалоговое окно открытия файла. Firefox хранит свои файлы в каталоге с именем «firefox», который находится внутри скрытого каталога с именем «.mozilla», который находится в вашем домашнем каталоге.

На нашем тестовом компьютере мы обнаружили базы данных Firefox SQLite по следующему адресу: «home/dave/.mozilla/firefox/vpvuy438.default-release»; ваш будет в похожем месте.

Мы собираемся открыть базу данных «cookies.sqlite», поэтому выделяем файл и нажимаем «Открыть». Открыв базу данных, вы можете изучить структуру ее таблиц, определения полей и данные.

Здесь мы видим различные файлы cookie Google и YouTube.

Экспорт дает представление

Также полезно экспортировать базу данных (выбрав «Файл» > «Экспорт» > «База данных в файл SQL»). Просматривая дамп SQL базы данных, вы можете увидеть всю схему базы данных, отображаемую в операторах SQL.