figbellСкачать
Tabliva: Инструмент для схем БД

Схема базы данных в виде понятного кода.

Таблицы, столбцы и связи записываются на простом языке; рядом в реальном времени рисуется ER-диаграмма, а каждое изменение на диаграмме записывается обратно в код. Tabliva показывает проблемы схемы, предлагает нормализацию и создаёт SQL и версионированный файл миграции, которые приводят базу данных к состоянию кода. PostgreSQL, MySQL / MariaDB и SQLite.

14,99 $Разовая покупкаВозврат в течение 14 дней

Снимок экрана Tabliva: рабочая область с примером содержимого

Основные функции

Понятный язык схем
Таблицы, логические типы, первичные и внешние ключи (->), индексы (частичные и по выражению), ограничения check и перечисления записываются в файлы .tabliva. Особенности диалекта добавляются аннотациями (@postgres(type: "jsonb")), представления, триггеры и функции — блоками sql как есть. В редакторе есть подсветка синтаксиса, автодополнение и поиск.
Двусторонняя ER-диаграмма
Диаграмма обновляется по мере ввода; при синтаксической ошибке остаётся последнее корректное состояние, а ошибка показывается с номером строки. Добавление, переименование и удаление таблиц, столбцов, связей и индексов или смена типа на диаграмме переписывают только нужную строку кода; комментарии сохраняются. Расположение хранится в отдельном файле (diagram.tabliva-layout.json).
Проблемы: 55 правил
Ключи, предложения недостающих внешних ключей с уровнем уверенности, типы (например, float для денежных сумм), индексы, повторяющиеся данные, именование, структура и совместимость с диалектом. У каждой проблемы есть простое объяснение и исправление; безопасные исправления применяются разом. Игнорирование проблемы и отключение правила записываются в файл kurallar.tabliva.
Нормализация
Функциональные зависимости задаются в коде строкой depends или предлагаются по именам столбцов. Для каждой таблицы показываются шаги от 1НФ до НФБК, исправления с предпросмотром «до / после» (перенести в другую таблицу, новая таблица, дочерняя таблица, намеренная копия) и SQL переноса данных для диалекта.
План изменений и файлы миграций
Код сравнивается с целью (папка миграций, снимок; в настольном приложении — рабочая база данных). Переименования распознаются; каждый шаг помечается рисками: потеря данных, перезапись таблицы, блокировка. SQL создаётся для PostgreSQL, MySQL / MariaDB и SQLite; файл миграции записывается в папку migrations/ с датой в имени, а его контрольная сумма добавляется в tabliva.sum.
Импорт существующей схемы
Читаются дампы SQL (pg_dump, mysqldump, SQLite .schema или написанный вручную CREATE TABLE), DBML и другой проект Tabliva; можно выбрать файл на каждую таблицу или один файл. Берётся только схема; строки INSERT и COPY пропускаются. В настольном приложении схему можно прочитать и прямо из базы данных.

Обработка данных и конфиденциальность

Tabliva хранит файлы проекта на этом устройстве (в хранилище IndexedDB браузера или в связанной папке) и никуда их не отправляет. Импортированные файлы SQL и DBML читаются на устройстве. К рабочей базе данных подключается только настольное приложение, только когда вы подключаетесь, напрямую с этого компьютера; схема и запросы не проходят через FigBell. Пароли, которые вы решили сохранить, хранятся в зашифрованном виде в связке ключей операционной системы и не попадают в резервные копии и экспорт.

Получить Tabliva

Попробуйте в браузере без установки; для постоянного использования купите версию для macOS, Windows или Linux.