Холст и текст вместе
- Связи мышью от поля к полю
- DBML и PlantUML, если нужен текст
- Отмена любого действия
Визуальный редактор ER-диаграмм
Вам не нужно ничего писать: перетаскивайте таблицы и ведите связи мышью. А если привычнее текстом — рядом DBML и PlantUML, правки идут в обе стороны. Импорт и экспорт SQL, картинки и PDF — прямо в браузере, без регистрации.
Открыть редактор Посмотреть пример
Возможности
Рисуйте мышью или пишите текстом — это один документ: перетаскивание таблицы меняет код, а правка кода сразу видна на холсте.
Вставьте DBML или PlantUML либо импортируйте дамп SQL. Можно начать с пустой схемы.
Двигайте таблицы, ведите связи, собирайте области во фреймы, красьте по смыслу.
Экспорт в SQL для миграции, картинка для документации, PDF для распечатки.
Схема хранится текстом, поэтому её можно держать рядом с кодом и смотреть изменения в любом diff.
MariaDB читается как MySQL. Oracle пока не поддерживаем.
Схема как текст: связь описывается прямо в поле — [ref: > authors.id].
Table authors {
id bigint [pk, increment]
full_name varchar(200) [not null]
}
Table books {
id bigint [pk, increment]
title varchar(500) [not null]
author_id bigint [ref: > authors.id]
price numeric(10,2) [default: 0]
}
Сущности и связь линией: authors ||--o{ books. Оформление и легенду редактор добавляет сам.
@startuml
entity authors {
* id : bigint <<PK>>
--
* full_name : varchar(200)
}
entity books {
* id : bigint <<PK>>
author_id : bigint <<FK>>
--
* title : varchar(500)
price : numeric(10,2)
}
authors ||--o{ books
@enduml
Счётчик — GENERATED BY DEFAULT AS IDENTITY, внешний ключ отдельным ALTER TABLE.
CREATE TABLE authors (
id bigint GENERATED BY DEFAULT AS IDENTITY NOT NULL PRIMARY KEY,
full_name varchar(200) NOT NULL
);
CREATE TABLE books (
id bigint GENERATED BY DEFAULT AS IDENTITY NOT NULL PRIMARY KEY,
title varchar(500) NOT NULL,
author_id bigint,
price numeric(10,2) DEFAULT 0
);
ALTER TABLE books ADD CONSTRAINT fk_books_author_id FOREIGN KEY (author_id) REFERENCES authors (id);
Имена в обратных кавычках, AUTO_INCREMENT, numeric становится decimal, движок InnoDB.
CREATE TABLE `authors` (
`id` bigint NOT NULL AUTO_INCREMENT PRIMARY KEY,
`full_name` varchar(200) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `books` (
`id` bigint NOT NULL AUTO_INCREMENT PRIMARY KEY,
`title` varchar(500) NOT NULL,
`author_id` bigint,
`price` decimal(10,2) DEFAULT 0
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
ALTER TABLE `books` ADD CONSTRAINT `fk_books_author_id` FOREIGN KEY (`author_id`) REFERENCES `authors` (`id`);
Имена в квадратных скобках, IDENTITY(1,1), varchar становится nvarchar.
CREATE TABLE [authors] (
[id] bigint IDENTITY(1,1) NOT NULL PRIMARY KEY,
[full_name] nvarchar(200) NOT NULL
);
CREATE TABLE [books] (
[id] bigint IDENTITY(1,1) NOT NULL PRIMARY KEY,
[title] nvarchar(500) NOT NULL,
[author_id] bigint,
[price] decimal(10,2) DEFAULT 0
);
ALTER TABLE [books] ADD CONSTRAINT [fk_books_author_id] FOREIGN KEY ([author_id]) REFERENCES [authors] ([id]);
Типы по сродству: TEXT, INTEGER, NUMERIC; внешний ключ внутри таблицы.
PRAGMA foreign_keys = ON;
CREATE TABLE authors (
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
full_name TEXT NOT NULL
);
CREATE TABLE books (
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
title TEXT NOT NULL,
author_id INTEGER,
price NUMERIC DEFAULT 0,
FOREIGN KEY (author_id) REFERENCES authors (id)
);
Картинки и документы: SVG, PNG, PDF — эти форматы редактор только отдаёт.
Без входа схема лежит в вашем браузере и никуда не отправляется. После входа — в личном хранилище: только вы видите свои схемы, доступ по паролю, история версий.
Ничего устанавливать не нужно. Регистрация — только если хотите хранить схемы на сервере.