Python: уроки, справочник и задачи

DB Browser for SQLite

Раздел: SQL и SQLite · Обновлено 31.10.2026

DB Browser for SQLite (DB4S) удобно держать открытым рядом с редактором кода: вы видите таблицы, которые создает ваш скрипт, проверяете данные и пробуете SQL-запросы до того, как перенести их в программу. Программа бесплатная и работает на Windows, macOS и Linux.

Ниже вы найдете базовые шаги по установке и работе с таблицами, а в добавленном разделе разберем связку DB4S и модуля sqlite3 в Python 3.12 и 3.13: почему изменения не видны в скрипте, откуда берется ошибка database is locked и как проверять запросы перед переносом в код.

DB Browser for SQLite
Фото: Mattia Capozzi (WMDE) / CC BY-SA 4.0, Wikimedia Commons
Содержание статьи
  1. Установка DB Browser for SQLite
  2. Создание или открытие базы данных
  3. Работа с таблицами и данными
  4. Экспорт и импорт данных
  5. Сохранение и закрытие базы данных
  6. Заключение
  7. Как работать с DB Browser и Python одновременно
    1. Безопасный порядок действий
    2. Ожидание блокировки в коде
    3. Отладка запросов во вкладке Execute SQL
  8. Частые вопросы
    1. Почему данные, добавленные в DB Browser, не видны в программе?
    2. Можно ли открыть в DB Browser базу, с которой работает запущенный скрипт?
    3. Как импортировать CSV с русскими буквами?
    4. Чем DB Browser отличается от SQLiteStudio и DBeaver?

DB Browser for SQLite - это удобное графическое приложение, которое позволяет работать с базами данных SQLite в удобном и интуитивно понятном интерфейсе. В данной статье мы рассмотрим основные шаги по использованию DB Browser for SQLite.

Установка DB Browser for SQLite

  1. Скачайте установочный файл DB Browser for SQLite с официального сайта
  2. Запустите установочный файл и следуйте инструкциям мастера установки.
  3. После завершения установки запустите приложение DB Browser for SQLite.

Создание или открытие базы данных

  1. Для создания новой базы данных нажмите на кнопку "New Database" и выберите место для сохранения файла базы данных.
  2. Для открытия существующей базы данных выберите пункт "Open Database" и укажите путь к файлу базы данных SQLite.

Работа с таблицами и данными

  1. Создание таблицы: Чтобы создать новую таблицу, выберите вкладку "Execute SQL" и введите запрос CREATE TABLE.
  2. Вставка данных: Для добавления новых записей в таблицу используйте вкладку "Browse Data" и кнопку "New Record".
  3. Просмотр данных: Для просмотра содержимого таблицы выберите её в левой панели и переключитесь на вкладку "Browse Data".
  4. Редактирование данных: Для изменения данных в таблице дважды кликните по ячейке и внесите необходимые изменения.
  5. Выполнение SQL-запросов: Используйте вкладку "Execute SQL" для выполнения сложных SQL-запросов.

Экспорт и импорт данных

  1. Экспорт данных: Для экспорта данных из таблицы выберите нужную таблицу, затем нажмите "File" -> "Export" и выберите формат экспорта (например, CSV).
  2. Импорт данных: Для импорта данных в таблицу выберите нужную таблицу, затем нажмите "File" -> "Import" и выберите файл с данными для импорта.

Сохранение и закрытие базы данных

  1. Для сохранения изменений в базе данных нажмите"File" -> "Save Database".
  2. Для закрытия базы данных нажмите "File" ->"Close Database".

Заключение

DB Browser for SQLite предоставляет удобный способ работы с базами данных SQLite с помощью графического интерфейса. Благодаря его функциональности вы можете легко создавать, изменять и просматривать данные в базе данных SQLite, выполнять SQL-запросы и экспортировать/импортировать данные. Следуя этой инструкции, вы сможете эффективно использовать DB Browser for SQLite для работы с вашими базами данных.

Как работать с DB Browser и Python одновременно

Главное, что нужно понимать: DB Browser открывает транзакцию, как только вы меняете данные или структуру. Пока вы не нажали Write Changes (Ctrl+S), изменения видны только внутри программы. Скрипт на Python их не увидит, а при попытке записать в ту же базу получит ошибку sqlite3.OperationalError: database is locked.

Безопасный порядок действий

  1. Внесли правки в DB4S, сразу нажмите Write Changes или Revert Changes.
  2. Запускайте скрипт, который пишет в базу, только когда в DB4S нет несохраненных изменений.
  3. После работы скрипта нажмите F5 или переоткройте таблицу на вкладке Browse Data, чтобы увидеть новые строки.
  4. Для экспериментов с запросами используйте копию файла базы, а не рабочую базу приложения.

Ожидание блокировки в коде

По умолчанию sqlite3.connect() ждет освобождения базы 5 секунд. Если вы часто держите базу открытой в DB4S, увеличьте таймаут и обрабатывайте ошибку явно:

import sqlite3

try:
    with sqlite3.connect("shop.db", timeout=15) as conn:
        conn.execute(
            "INSERT INTO products (name, price) VALUES (?, ?)",
            ("Чайник", 2490),
        )
except sqlite3.OperationalError as err:
    print("Не удалось записать:", err)
    print("Проверьте, нет ли несохраненных изменений в DB Browser")

Блок with у соединения фиксирует транзакцию при успехе и откатывает ее при исключении, но само соединение не закрывает. В долгоживущих программах вызывайте conn.close() явно.

Отладка запросов во вкладке Execute SQL

Сложный запрос сначала проверьте в Execute SQL: результат и время выполнения видны сразу. Перед запросом добавьте EXPLAIN QUERY PLAN, и DB4S покажет, использует ли SQLite индекс или перебирает всю таблицу. Строка SCAN products на большой таблице означает, что стоит создать индекс по полю из условия WHERE.

ЗадачаВ DB BrowserВ Python
Сохранить измененияWrite Changes, Ctrl+Sconn.commit()
Отменить измененияRevert Changesconn.rollback()
Посмотреть структуруDatabase StructurePRAGMA table_info(products)
Проверить целостностьTools, Integrity CheckPRAGMA integrity_check

Как подключаться к базе из кода, разобрано в статье Python sqlite.

Частые вопросы

Несколько вопросов, которые часто задают начинающие, и ответы на них.

Почему данные, добавленные в DB Browser, не видны в программе?

Скорее всего, изменения не записаны в файл. Нажмите Write Changes (Ctrl+S). Также проверьте, что скрипт открывает тот же файл: относительный путь вроде shop.db считается от текущей рабочей папки, а не от папки скрипта.

Можно ли открыть в DB Browser базу, с которой работает запущенный скрипт?

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

Как импортировать CSV с русскими буквами?

Сохраните файл в кодировке UTF-8, затем выберите File, Import, Table from CSV file. В окне импорта проверьте разделитель (запятая или точка с запятой) и отметьте, что первая строка содержит названия колонок.

Чем DB Browser отличается от SQLiteStudio и DBeaver?

DB4S сфокусирован только на SQLite и проще в освоении. SQLiteStudio тоже работает с одной СУБД, но имеет больше настроек, а DBeaver подходит, если вы параллельно работаете с PostgreSQL или MySQL.