Навигация по базе данных в HarborDB
Добро пожаловать в руководство по навигации по базе данных! HarborDB предоставляет мощные инструменты для изучения и понимания ваших баз данных PostgreSQL. Это руководство покажет вам, как эффективно ориентироваться в структуре вашей базы данных, изучать таблицы и связи, а также максимально использовать визуальный интерфейс HarborDB.
Интерфейс навигации
Обзор боковой панели
Левая боковая панель — ваш основной инструмент навигации. Она отображает иерархический вид структуры вашей базы данных:
Имя подключения
├── Базы данных
│ ├── База данных 1
│ │ ├── Схемы
│ │ │ ├── public
│ │ │ │ ├── Таблицы
│ │ │ │ ├── Представления
│ │ │ │ ├── Функции
│ │ │ │ └── Последовательности
│ │ │ └── other_schemas
│ │ └── Настройки
│ └── База данных 2
└── Системные объекты
Режимы навигации
HarborDB предлагает два основных режима навигации:
- Древовидный вид (по умолчанию): Иерархическое раскрытие объектов
- Режим поиска: Быстрый поиск по всем объектам
Изучение баз данных
Просмотр доступных баз данных
При первом подключении вы увидите список баз данных, к которым у вас есть доступ:
- Разверните подключение в боковой панели
- Нажмите "Базы данных", чтобы увидеть список
- Дважды щёлкните любую базу данных для изучения её содержимого
Информация о базе данных
Щёлкните правой кнопкой мыши по любой базе данных для быстрого доступа к:
- Свойства: Просмотр размера базы данных, кодировки, сопоставления
- Новая вкладка запроса: Открыть редактор запросов с предварительным подключением к этой базе данных
- Обновить: Обновить список баз данных
- Создать базу данных: Если у вас есть права
Работа со схемами
Понимание схем
Схемы — это логические контейнеры внутри баз данных. PostgreSQL по умолчанию использует схему public, но вы можете столкнуться с другими.
Изучение содержимого схемы
- Разверните базу данных, чтобы увидеть её схемы
- Разверните схему, чтобы увидеть типы объектов:
- Таблицы: Хранение данных
- Представления: Виртуальные таблицы из запросов
- Функции: Хранимые процедуры и функции
- Последовательности: Генераторы автоинкрементных чисел
Операции со схемами
Щёлкните правой кнопкой мыши по схеме для:
- Создать новую таблицу/представление/функцию
- Обновить содержимое схемы
- Установить по умолчанию: Сделать эту схему предпочтительной
Изучение таблиц
Просмотр структуры таблицы
Когда вы разворачиваете папку "Таблицы", вы увидите все таблицы в схеме. Нажмите на любую таблицу, чтобы увидеть:
Вкладка "Столбцы"
- Имена столбцов и типы данных
- Ограничения (Первичный ключ, Внешний ключ и т.д.)
- Значения по умолчанию и статус nullable
- Информация о хранении
Вкладка "Предварительный просмотр данных"
- Первые 100 строк данных таблицы
- Сортируемые столбцы (щёлкните по заголовкам)
- Фильтруемые данные (щёлкните правой кнопкой мыши по заголовкам столбцов)
- Опции быстрого экспорта
Вкладка "Индексы"
- Имена индексов и типы
- Индексированные столбцы
- Размер индекса и статистика
Вкладка "Внешние ключи"
- Связи с другими таблицами
- Ссылающиеся таблицы и столбцы
- Правила каскадирования
Быстрые действия с таблицами
Щёлкните правой кнопкой мыши по любой таблице для мгновенного доступа к:
| Действие | Описание | Сочетание клавиш |
| --------------------- | --------------------------------------------- | ---------------- |
| Выбрать топ 100 | Открыть запрос SELECT * FROM table LIMIT 100 | ⌘ + Щелчок |
| Просмотреть структуру | Открыть структуру таблицы в детальном виде | ⌥ + Щелчок |
| Создать SELECT | Создать базовый SELECT-запрос для этой таблицы | |
| Создать INSERT | Создать шаблон INSERT | |
| Экспортировать данные | Экспортировать таблицу в CSV/JSON | ⌘ + E |
| Обновить | Обновить информацию о таблице | ⌘ + R |
Понимание представлений
Представление vs Таблица
Представления выглядят похоже на таблицы, но являются виртуальными объектами, основанными на SQL-запросах:
- Обычные представления: Определения сохранённых запросов
- Материализованные представления: Предварительно вычисленные результаты (кэшированные)
Информация о представлении
Нажмите на любое представление, чтобы увидеть:
- Определение: SQL-запрос, определяющий представление
- Столбцы: Структура результирующего набора
- Зависимости: Таблицы и представления, от которых зависит это представление
Работа с большими базами данных
Фильтрация и поиск
При работе со многими объектами используйте эти функции:
Быстрый фильтр
- Нажмите в поле поиска в верхней части боковой панели
- Введите имя объекта для фильтрации в реальном времени
- Используйте подстановочные знаки:
*users*находит все объекты с "users" в имени
Расширенный поиск
- Ограничение поиска: Ограничьте таблицами, представлениями или всеми объектами
- Переключение чувствительности к регистру: Совпадение с точным регистром
- Поддержка регулярных выражений: Используйте регулярные выражения для сложных шаблонов
Избранные объекты
Отмечайте часто используемые объекты для быстрого доступа:
- Щёлкните правой кнопкой мыши по любому объекту
- Выберите "Добавить в избранное"
- Доступ к избранному из раздела "Избранное" в боковой панели
Изучение связей
Визуализация связей таблиц
HarborDB помогает понять, как связаны таблицы:
Визуализация внешних ключей
- Щёлкните правой кнопкой мыши по любой таблице с внешними ключами
- Выберите "Показать связи"
- Просмотрите графическое представление связей
Анализ зависимостей
- Посмотрите, что зависит от этой таблицы
- Определите циклические ссылки
- Поймите влияние изменений схемы
Обозреватель связей
Для сложных баз данных используйте Обозреватель связей:
- Откройте меню Инструменты → Обозреватель связей
- Выберите начальную таблицу
- Изучите связи визуально
- Экспортируйте диаграмму связей для документации
Практические примеры навигации
Пример 1: Изучение новой базы данных
При подключении к незнакомой базе данных:
- Проверьте размер базы данных (щёлкните правой кнопкой мыши по базе данных → Свойства)
- Перечислите все схемы и определите основные
- Просмотрите количество таблиц в каждой схеме
- Изучите самые большие таблицы (сортировка по количеству строк или размеру)
- Ищите таблицы документации (часто называются: docs, documentation, readme)
Пример 2: Поиск конкретных данных
Когда вам нужно найти информацию о клиентах:
- Ищите таблицы, содержащие "customer", "user" или "client"
- Изучите вероятные таблицы на наличие соответствующих столбцов
- Проверьте внешние ключи, чтобы найти связанные данные
- Используйте Предварительный просмотр данных для выборки фактических данных
Пример 3: Понимание структуры приложения
Чтобы понять, как приложение организует данные:
- Сгруппируйте таблицы по префиксу (например,
app_,auth_,report_) - Изучите соглашения об именовании
- Ищите шаблоны внешних ключей
- Определите справочные таблицы
Сочетания клавиш для навигации
Освойте эти сочетания клавиш для эффективной навигации:
| Сочетание клавиш | Действие |
| ---------------- | --------------------------------- |
| ⌘ + B | Переключить видимость боковой панели |
| ⌘ + F | Фокус на поиске в боковой панели |
| ⌘ + G | Найти следующее в результатах поиска |
| ⌥ + Щелчок | Открыть объект в новой вкладке |
| ⌘ + Щелчок | Открыть SELECT-запрос для таблицы |
| ⌘ + R | Обновить текущий вид |
| ⌘ + . | Очистить поиск/фильтр |
| ⌘ + 1-9 | Переключение между разделами боковой панели |
Лучшие практики навигации
Советы по организации
- Используйте осмысленные имена подключений: Включайте окружение (Dev, Prod) и назначение
- Группируйте связанные подключения: Локальная разработка, staging, production
- Цветовое кодирование по окружению: Зелёный для dev, жёлтый для staging, красный для prod
- Создавайте шаблоны подключений: Для похожих настроек баз данных
Соображения производительности
- Ограничьте автоматическое разворачивание: Не разворачивайте всё сразу
- Используйте поиск вместо просмотра для больших баз данных
- Закрывайте неиспользуемые подключения, чтобы освободить ресурсы
- Периодически очищайте кэш для очень больших схем
Практики безопасности
- Используйте специфичные для подключения учетные данные, когда это возможно
- Ограничьте видимость схем соответствующими правами
- Избегайте сохранения паролей production в менее безопасных средах
- Регулярно проводите аудит использования подключений
Устранение проблем с навигацией
Ошибки "Объект не найден"
Если вы не видите ожидаемые объекты:
- Обновите подключение (щёлкните правой кнопкой мыши → Обновить)
- Проверьте ваши права на базе данных
- Убедитесь, что вы находитесь в правильной схеме
- Подтвердите, что объект не был переименован или удалён
Медленная производительность навигации
При медленном отклике:
- Уменьшите глубину автоматического разворачивания в Настройках
- Отключите миниатюрные предварительные просмотры для больших таблиц
- Увеличьте таймаут запроса для удалённых подключений
- Используйте поиск вместо древовидного разворачивания
Отсутствующие связи
Если внешние ключи не отображаются:
- Проверьте, правильно ли определены внешние ключи в PostgreSQL
- Убедитесь, что у вас есть права на просмотр информации об ограничениях
- Обновите метаданные таблицы
- Проверьте отложенную проверку ограничений
Расширенные функции навигации
Пользовательские запросы для изучения
Создавайте сохранённые запросы для сложного изучения:
-- Найти все таблицы с конкретным столбцом
SELECT
table_schema,
table_name,
column_name,
data_type
FROM information_schema.columns
WHERE column_name ILIKE '%email%'
ORDER BY table_schema, table_name;
-- Список самых больших таблиц
SELECT
schemaname,
tablename,
pg_size_pretty(pg_total_relation_size(schemaname || '.' || tablename)) as size
FROM pg_tables
WHERE schemaname NOT IN ('pg_catalog', 'information_schema')
ORDER BY pg_total_relation_size(schemaname || '.' || tablename) DESC
LIMIT 20;
Закладки для частых путей
Сохраняйте часто используемые пути навигации:
- Перейдите к целевому объекту
- Нажмите кнопку "Закладка" на панели инструментов
- Назовите закладку (например, "Таблицы аналитики клиентов")
- Доступ к закладкам из меню "Закладки"
Экспорт структуры базы данных
Документируйте структуру вашей базы данных:
- Выберите объекты в боковой панели
- Щёлкните правой кнопкой мыши → Экспортировать структуру
- Выберите формат: SQL, Markdown или HTML
- Включите опции: С данными, ограничениями, индексами
Следующие шаги
Теперь, когда вы можете эффективно ориентироваться в базах данных:
- Основы запросов — Научитесь писать и выполнять SQL-запросы
- Экспорт данных — Сохраняйте результаты в CSV или JSON
- Оптимизация производительности — Оптимизируйте ваш рабочий процесс с базой данных
Получение помощи
Если у вас возникли проблемы с навигацией:
- Проверьте наше Руководство по поддержке для устранения неполадок
- Посетите Часто задаваемые вопросы (FAQ) для получения ответов на общие вопросы
- Свяжитесь со службой поддержки для получения персональной помощи
Обратная связь
Помогите нам улучшить документацию