Skip to content

yyuzii/DBB-database-browser

Repository files navigation

SQL Browser - Modern Database Manager 🎨

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

✨ Возможности

🔐 Безопасность

  • ✅ Сохранение учётных данных локально
  • ✅ Защита паролей
  • ✅ Все удобно и понятно

💾 Поддерживаемые БД

  • SQLite - локальные базы данных
  • MySQL - популярная реляционная БД
  • PostgreSQL - продвинутая реляционная БД

📊 Функциональность

  • ✅ Просмотр всех таблиц в БД
  • ✅ Просмотр структуры таблицы (колонки, типы)
  • ✅ Просмотр данных таблиц
  • ✅ Выполнение SQL запросов (SELECT, INSERT, UPDATE, DELETE)
  • ✅ Экспорт данных в CSV
  • ✅ Экспорт данных в Excel (XLSX)
  • ✅ Интерактивный SQL редактор

🎨 Дизайн

  • ✅ Чёрно-белая палитра
  • ✅ Закруглённые кнопки
  • ✅ Интуитивный интерфейс
  • ✅ Адаптивный layout

📦 Установка

1. Перейдите в папку проекта

cd "d:\hz shto\sql-browser"

2. Создайте виртуальное окружение (опционально)

python -m venv venv
venv\Scripts\activate

3. Установите зависимости

pip install -r requirements.txt

🚀 Запуск

python main.py

📁 Структура проекта

sql-browser/
├── main.py              # Главное приложение (PyQt5)
├── database_manager.py  # Модуль управления БД
├── requirements.txt     # Зависимости
├── users.json          # Данные пользователей (создаётся автоматически)
└── README.md           # Документация

🔧 Используемые библиотеки

  • PyQt5 - современный графический интерфейс
  • mysql-connector-python - подключение к MySQL
  • psycopg2-binary - подключение к PostgreSQL
  • pandas - работа с данными для экспорта
  • openpyxl - создание Excel файлов

💡 Как использовать

Регистрация и вход

  1. При первом запуске выберите Регистрация
  2. Введите имя пользователя и пароль
  3. Подтвердите пароль
  4. После успешной регистрации вернитесь во вкладку Вход
  5. Введите учётные данные

Подключение к БД

  1. Нажмите одну из кнопок подключения:

    • 🗄️ SQLite - выберите .db файл
    • 📊 MySQL - введите параметры подключения
    • 🐘 PostgreSQL - введите параметры подключения
  2. Если подключение успешно, статус изменится на ✅ Подключено

Просмотр таблиц

  1. После подключения список таблиц автоматически загружается
  2. Нажмите на таблицу в списке
  3. Данные загружаются в центральную таблицу
  4. Информация о структуре показывается справа

Выполнение SQL запроса

  1. Напишите SQL запрос в текстовое поле (SELECT, INSERT, UPDATE, DELETE)
  2. Нажмите ▶️ Выполнить
  3. Результаты появятся в таблице и в окне результатов

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

  1. Выберите таблицу
  2. Нажмите 💾 CSV или 📊 Excel
  3. Выберите место сохранения

🎨 Интерфейс

Цветовая палитра

  • Чёрный (#1a1a1a) - основной цвет
  • Белый (#ffffff) - фон и текст
  • Серый (#f5f5f5) - дополнительный фон
  • Зелёный (#388e3c) - успех
  • Красный (#d32f2f) - ошибки

Компоненты

  • ModernButton - кнопки с закруглениями
  • ModernLineEdit - текстовые поля с закруглениями
  • QTableWidget - таблица данных
  • QTextEdit - редактор SQL запросов

📝 Примеры SQL запросов

-- SELECT
SELECT * FROM users;

-- INSERT
INSERT INTO users (name, email) VALUES ('John', 'john@example.com');

-- UPDATE
UPDATE users SET name='Jane' WHERE id=1;

-- DELETE
DELETE FROM users WHERE id=1;

🛡️ Безопасность

  • Пароли хранятся локально в файле users.json
  • Для боевого использования рекомендуется:
    • Использовать хеширование паролей
    • Добавить шифрование в БД
    • Использовать SSL соединения

🤝 Поддержка

Если у вас есть вопросы или предложения, создайте issue или pull request.


Версия: 2.0 (PyQt5 Edition)
Обновлено: Май 2026

🎯 Функциональность

💾 Поддерживаемые базы данных

  • SQLite - локальные базы данных
  • MySQL - популярная реляционная БД
  • PostgreSQL - продвинутая реляционная БД

📊 Основные возможности

  • ✅ Подключение к различным БД
  • ✅ Просмотр всех таблиц в БД
  • ✅ Просмотр данных таблиц (до 100 строк)
  • ✅ Информация о структуре таблицы (колонки, типы)
  • ✅ Выполнение SQL запросов (SELECT, INSERT, UPDATE, DELETE)
  • ✅ Экспорт данных в CSV
  • ✅ Экспорт данных в Excel (XLSX)
  • ✅ Интерактивный SQL редактор

📦 Установка

1. Перейдите в папку проекта

cd "d:\hz shto\sql-browser"

2. Создайте виртуальное окружение

python -m venv venv
venv\Scripts\activate

3. Установите зависимости

pip install -r requirements.txt

🚀 Запуск

python main.py

📁 Структура проекта

sql-browser/
├── main.py              # Главное приложение (GUI)
├── database_manager.py  # Модуль управления БД
├── requirements.txt     # Зависимости
└── README.md           # Документация

🔧 Используемые библиотеки

  • sqlite3 - встроенная поддержка SQLite
  • mysql-connector-python - подключение к MySQL
  • psycopg2-binary - подключение к PostgreSQL
  • pandas - работа с данными для экспорта
  • openpyxl - создание Excel файлов

💡 Как использовать

Подключение к БД

  1. Нажмите одну из кнопок подключения:

    • 🗄️ SQLite - выберите .db файл
    • 📊 MySQL - введите параметры подключения
    • 🐘 PostgreSQL - введите параметры подключения
  2. Если подключение успешно, статус изменится на зеленый ✅

Просмотр таблиц

  1. После подключения список таблиц автоматически загружается
  2. Выберите таблицу из списка
  3. Данные загружаются в центральную таблицу
  4. Информация о структуре показывается справа

Выполнение SQL запроса

  1. Напишите SQL запрос в текстовое поле (SELECT, INSERT, UPDATE, DELETE)
  2. Нажмите ▶️ Execute
  3. Результаты появятся в таблице и в окне результатов

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

  1. Выберите таблицу
  2. Нажмите 💾 Export CSV или 📊 Export Excel
  3. Выберите место сохранения

📝 Примеры SQL запросов

-- SELECT
SELECT * FROM users WHERE age > 18;

-- INSERT
INSERT INTO users (name, email) VALUES ('John', 'john@example.com');

-- UPDATE
UPDATE users SET age = 25 WHERE id = 1;

-- DELETE
DELETE FROM users WHERE id = 1;

🎨 Интерфейс

Левая панель - Управление подключениями и список таблиц
Центр - Данные таблицы и SQL редактор
Справа - Информация о таблице и результаты запросов

🌐 Примеры подключения

SQLite

  • Просто выберите .db файл

MySQL

Host: localhost
User: root
Password: yourpassword
Database: mydatabase
Port: 3306

PostgreSQL

Host: localhost
User: postgres
Password: yourpassword
Database: mydatabase
Port: 5432

🚀 Будущие улучшения

  • 🔧 Визуальный конструктор SQL запросов
  • 📈 Графики и диаграммы данных
  • 💾 Сохранение часто используемых запросов
  • 🔍 Поиск по данным
  • 📋 Синтаксис подсветка для SQL
  • 🔐 Сохранение пароля в шифрованном виде
  • 🌙 Темная тема
  • 📊 Сравнение таблиц
  • ↔️ Синхронизация между БД
  • 📱 Веб-версия

⚠️ Важно

  • Используйте с осторожностью с продакшн БД!
  • Сделайте резервные копии перед UPDATE/DELETE
  • Проверяйте запросы перед выполнением

Готово к использованию! 🎉

About

Мощный инструмент для работы с базами данных прямо с вашего рабочего стола. 🗄️

Resources

Stars

1 star

Watchers

0 watching

Forks

Packages

 
 
 

Contributors