Группы таблиц
Группа таблиц — это именованная цветная рамка, которая рисуется позади связанных таблиц на холсте ERD и показывает, какие таблицы относятся друг к другу.
Таблица входит не более чем в одну группу. Группы сохраняются вместе с диаграммой, как и то, в какую группу входит каждая таблица.
Вдоль верхнего края рамки проходит строка заголовка со значком группы, именем группы, выделенным полужирным шрифтом, и кнопкой x, которая удаляет группу и отображается, пока указатель находится над группой, — см. Удаление группы. Группа без имени отображается как unnamed, а слишком длинное для строки заголовка имя обрезается символом ….
Рамка всегда вмещает свои таблицы: она сохраняет заданный ей размер, но растягивается так, чтобы каждая таблица оставалась внутри с отступом 24px вокруг нее и строкой заголовка сверху. Таблица, которая увеличивается, растягивает рамку вместе с собой, как и таблица, отпущенная у края так, что ее центр остается внутри рамки. Пока таблицы перетаскиваются, рамка не увеличивается и не уменьшается. Растяжение не сохраняется: рамка возвращается к собственному размеру, как только таблице больше не нужно это место.
Группы рисуются позади всего остального на холсте: таблиц, заметок и линий связи.
Там, где группы перекрываются, впереди рисуется та, на которую нажали последней или которую последней добавили, и тело группы никогда не закрывает строку заголовка другой группы. Этот порядок не сохраняется, поэтому в повторно открытой диаграмме группы накладываются в том порядке, в котором они были добавлены.
Группы отображаются на холсте ERD, на мини-карте и на экспортированном изображении, а Обозреватель показывает их в списке — см. Переход к группе. Вкладка «Визуализация» не рисует ни групп, ни цветов групп ни в одном из режимов.
Агент для программирования тоже может создавать и изменять группы, а также читать DDL выбранных групп — см. Группы таблиц в описании инструментов MCP.

Создание группы
Создать группу можно двумя способами, и у каждого из них есть сочетание клавиш. Ни один из них не предлагается в редакторе только для чтения или пока группы скрыты, и их сочетания клавиш в этом случае ничего не делают.
Как и другие сочетания клавиш холста, они работают только на вкладке ERD и не срабатывают, пока редактируется ячейка, заметка или имя группы, — см. Сочетания клавиш.
Рисование группы
Нажмите кнопку New Table Group на панели инструментов холста, нажмите Alt + G (Windows/Linux) или ⌥ + G (Mac) либо выберите New Table Group в контекстном меню холста (там этот пункт следует за пунктами New Table и New Memo) или в Быстром поиске на вкладке ERD. Затем нарисуйте рамку на холсте перетаскиванием.
Кнопка и сочетание клавиш включают и выключают рисование, поэтому нажатие любого из них, пока рисование активно, завершает его, как бы оно ни было начато; пункт контекстного меню и Быстрый поиск только начинают его. Начало рисования выключает инструмент «Рука» и отменяет рисуемую связь.
Пока рисование активно, курсор принимает вид перекрестья, а нажатие начинает рамку в той точке, где оно произошло, даже над таблицей, вместо того чтобы выделять или перемещать то, что находится под ним. Панель инструментов холста в это время отмечает свою кнопку New Table Group, а не инструмент «Рука» и не указатель.
Отпускание кнопки мыши добавляет в этой рамке группу шириной не менее 160px и высотой не менее 100px, включая строку заголовка, каким бы коротким ни было перетаскивание. Щелчок без перетаскивания добавляет группу шириной 480px и высотой 320px, левый верхний угол которой находится в точке щелчка.
Каждая таблица, не входящая ни в одну группу, центр которой находится внутри новой рамки, входит в группу. Таблица, которая уже входит в другую группу, остается в ней.
Средняя кнопка мыши по-прежнему перемещает холст и оставляет рисование активным. Следующие действия завершают рисование, не добавляя группу:
- Клавиша
EscapeлибоAlt + G(Windows/Linux) или⌥ + G(Mac) до нажатия или во время перетаскивания. До нажатия они оставляют выделение как есть; нажатие, которое начинает рамку, уже сняло его. - Щелчок правой кнопкой мыши, который снимает выделение. Контекстное меню не открывается.
- Переключение на инструмент «Рука» клавишей
Spaceили с панели инструментов холста, нажатие кнопки указателя или кнопкиNew Table Groupна панели инструментов либо начало рисования связи. - Переключение на другую вкладку, скрытие групп или переход редактора в режим только для чтения.
Группировка выделенных таблиц
Выделите одну или несколько таблиц и нажмите T, затем G либо выберите Group selected tables в контекстном меню таблицы или Group Selected Tables в Быстром поиске, где эта команда отображается, пока выделена таблица.
Новая группа рисуется вокруг выделенных таблиц с отступом 24px со всех сторон и строкой заголовка сверху. Каждая выделенная таблица входит в нее, покидая группу, в которой была, а покинутая группа остается, даже если теперь она пуста. Заметки в выделении пропускаются.
T, затем G — это два нажатия без клавиши-модификатора: G в течение секунды после T. Если ни одна таблица не выделена, это сочетание ничего не делает, а в текстовом поле, например в поле поиска Обозревателя, оно вводит эти две буквы.

В обоих случаях у новой группы нет ни имени, ни цвета. Выделяется только она, а над строкой заголовка открывается поле редактирования имени, чтобы можно было сразу ввести имя, — см. Имя группы.
Группа и таблицы, которые в нее вошли, составляют один шаг отмены, а введенное имя — еще один.
Имя группы
Имя группы редактируется в поле, которое открывается над ее строкой заголовка. Поле открывается само после создания группы, при двойном щелчке по строке заголовка и при выборе пункта Rename в контекстном меню группы.
Клавиша Enter или щелчок в другом месте сохраняет имя. Клавиша Escape закрывает поле, не меняя имя, и оставляет группу выделенной, а повторное нажатие Escape снимает выделение.
Измененное имя составляет один шаг отмены; сохранение имени без изменений ничего не записывает. Пустое имя или имя из одних пробелов отображается как unnamed.
Пока поле открыто, сочетания клавиш холста не срабатывают, а сочетания клавиш Быстрого поиска и Toggle Explorer ничего не делают, как и при редактировании ячейки таблицы.
Поиск и замена ищет по именам групп (вид текста Table group names), пока группы отображаются, а кнопки Replace и Replace All переименовывают группы — см. Замена. Быстрый поиск не ищет по именам групп.
Цвет группы
Выберите Color в контекстном меню группы, чтобы открыть окно выбора цвета с цветом группы.
Как и для таблиц и заметок, окно выбора цвета окрашивает каждую выделенную таблицу, заметку и группу, а пункт Remove color в меню или кнопка No color в окне выбора цвета убирает цвет у всех них — см. Цвет таблиц и заметок. Цвет группы также предлагается в ряду Document colors окна выбора цвета.
Окрашенная группа рисует строку заголовка и контур этим цветом, а тело — его бледным оттенком. Группа без цвета использует нейтральные оттенки серого из темы.
Каждая таблица в окрашенной группе получает цвет группы на всем заголовке и сохраняет собственный цвет на левом крае, поэтому видны оба.
Текст и кнопки на таком заголовке, как и имя, значок и кнопка x в строке заголовка группы, становятся белыми, а на светлом цвете, где черный читается намного лучше, — черными. Среди стандартных цветов окна выбора цвета Orange, Amber, Yellow и Lime получают черный, а остальные — белый.
Таблица сохраняет собственный заголовок, пока у ее группы нет цвета, пока группы скрыты, при масштабе 70% и меньше, когда таблицы сворачиваются до имени, а также на вкладке «Визуализация».
Изменение цвета записывается в историю изменений так же, как для таблиц и заметок.
Выделение групп
Щелкните строку заголовка группы, чтобы выделить только ее, либо используйте Ctrl + click (Windows/Linux) или ⌘ + click (Mac), чтобы добавить группу к выделению.
Нажатие на строку заголовка уже выделенной группы сохраняет все выделение, поэтому последующее перетаскивание перемещает его целиком.
Нажатие на строку заголовка или щелчок по группе правой кнопкой мыши переносит группу на передний план перед другими группами, а ее таблицы — перед всеми остальными таблицами и заметками.
Для левой кнопки мыши тело группы, т. е. область под строкой заголовка, ведет себя как холст: перетаскивание по нему перемещает холст, Ctrl + drag (Windows/Linux) или ⌘ + drag (Mac) рисует рамку выделения, а щелчок снимает выделение. Таблицы, заметки и линии связи над телом группы реагируют на указатель как обычно.
Рамка выделения захватывает группу, только если целиком охватывает рамку группы, поэтому рамка, нарисованная внутри группы, выделяет таблицы без группы — см. Множественное выделение.
Ctrl + A (Windows/Linux) или ⌘ + A (Mac) никогда не выделяет группу.
Пункт Select tables в контекстном меню группы заменяет выделение таблицами группы, не включая в него саму группу, поэтому следующая команда затрагивает только таблицы.
Используйте его перед командами, которые действуют только на таблицы и пропускают выделенную группу, например перед копированием или фокусом на таблицах.
Контур выделенной группы окрашивается в цвет выделения. В сеансе совместного редактирования группа, выделенная другим участником, обводится цветом этого участника.
Переход к группе
Обозреватель перечисляет группы в папке Table Groups по имени, и под каждой группой находятся ее таблицы. Быстрый поиск не показывает группы.
Выбор строки группы в Обозревателе, совпадения Поиска и замены в имени группы или строки группы в списке Просмотра различий выполняет переход к этой группе.
Переход выводит рамку группы в область просмотра, ориентируясь на строку заголовка, если рамка выше холста, — см. Куда ведет переход. Затем он выделяет только эту группу и переносит ее на передний план вместе с таблицами, как и нажатие на ее строку заголовка.
Пока группы скрыты или если группа уже удалена, переход к ней ничего не делает.
В Просмотре различий каждая сторона переходит к группе, только если ее собственный документ содержит и показывает эту группу, — см. Переход к изменению.
Перемещение группы и изменение ее размера
Перетащите группу за строку заголовка, чтобы переместить ее вместе со всеми ее таблицами.
Если группа входит в более широкое выделение, вместе с ней перемещается все выделение, а таблица, которая одновременно выделена и входит в группу, перемещается один раз.
Перетаскивание начинается, только когда указатель сместится на небольшое расстояние, поэтому щелчок или двойной щелчок по строке заголовка остается щелчком. Alt + drag на строке заголовка перемещает группу так же, как обычное перетаскивание; группа никогда не дублируется.
Перемещение вместе со всеми перенесенными таблицами составляет один шаг отмены.
Перетаскивание отдельной таблицы перемещает только эту таблицу и может перенести ее в группу или вывести из группы — см. Добавление и исключение таблиц.
У каждой группы, выделена она или нет, есть маркеры изменения размера на четырех краях и в четырех углах, как у заметки.
Перетащите любой из них левой кнопкой мыши: рамка следует за указателем, а когда вы отпускаете кнопку, новый размер сохраняется одним шагом отмены.
Группу нельзя сделать меньше 160px на 100px, а также меньше ее таблиц с отступом 24px и строкой заголовка. Край останавливается на этой границе, как бы далеко ни ушел указатель.
Добавление и исключение таблиц
Таблица входит в группу или выходит из нее в зависимости от того, где ее отпустить.
Когда вы перетаскиваете таблицы и отпускаете их, каждая перетаскиваемая таблица, которую не переносит выделенная группа, оценивается по своему центру. Она входит в самую верхнюю группу, рамка которой содержит ее центр, или выходит из своей группы, если ее центр не находится ни в одной рамке группы. Самая верхняя группа — та, что нарисована впереди.
Группа, которую перетаскивание оставляет на месте, сохраняет рамку, которая была у нее в начале перетаскивания, поэтому таблица, слегка сдвинутая внутри своей группы, остается в ней, а чтобы выйти из группы, ее нужно перетащить так, чтобы ее центр оказался за пределами этой рамки.
Во время перетаскивания обводится каждая группа, в которую попала бы таблица, если ее отпустить.
Если вы отпускаете кнопку мыши в пределах примерно 200ms после последнего движения, смена группы входит в шаг отмены перетаскивания, поэтому одна отмена возвращает таблицы на прежние места и в прежние группы. После более долгой паузы перед отпусканием смена группы становится отдельным шагом — см. Один жест — один шаг.
Щелчок или перетаскивание на несколько пикселей не меняет принадлежность таблиц к группам, а пока группы скрыты, ни одна таблица не меняет группу.
Другие способы изменить состав таблиц в группе:
- Пункт
Remove from groupв контекстном меню таблицы убирает каждую выделенную таблицу из ее группы. Он отображается, пока какая-либо из выделенных таблиц входит в группу, даже когда группы скрыты, и составляет один шаг отмены. - Пункт
Group selected tablesперемещает выделенные таблицы в новую группу — см. Группировка выделенных таблиц. - После удаления группы ее таблицы не входят ни в одну группу.
Вставленная таблица или таблица, продублированная с помощью клавиши Alt, не входит ни в одну группу, даже если оказывается внутри рамки группы. При последующем перетаскивании к ней применяется правило отпускания.
Удаление группы
Удаление группы никогда не удаляет ее таблицы: они остаются на своих местах, не входя ни в одну группу.
- Кнопка
xв конце строки заголовка, которая отображается, пока указатель находится над группой, удаляет только эту группу. - Пункт
Deleteв контекстном меню группы удаляет группу. Если группа — один из нескольких выделенных элементов, пункт называетсяDelete selectedи удаляет все выделенное: таблицы, заметки и группы. - Когда выделены группы, клавиша
DeleteилиBackspaceудаляет выделенные группы вместе со всеми выделенными таблицами и заметками, как иCtrl + BackspaceиCtrl + Delete(Windows/Linux) или⌘ + Backspaceи⌘ + Delete(Mac) — см. Удаление таблиц и заметок.
Каждое удаление составляет один шаг отмены, и его отмена возвращает группу вместе с ее таблицами.
Меню группы
Щелкните строку заголовка, тело или край группы правой кнопкой мыши, чтобы открыть ее меню. На Mac меню открывает также Ctrl + click, а на сенсорном экране — долгое нажатие.
Щелчок правой кнопкой мыши сначала выделяет группу — только ее, если она еще не входит в выделение, — поэтому пункты Color и Delete selected затрагивают остальное выделение, только если группа уже была в нем.
Select tables: выделяет только таблицы группы — см. Выделение групп.Rename: открывает поле редактирования имени — см. Имя группы.Color: открывает окно выбора цвета — см. Цвет группы.Remove color: отображается, пока у какого-либо выделенного элемента есть цвет.DeleteилиDelete selected, если группа — один из нескольких выделенных элементов, с клавишейDelete, указанной справа, — см. Удаление группы.
В контекстное меню таблицы добавляются пункты Group selected tables и Remove from group после Color и Remove color, перед пунктом удаления, а в контекстное меню холста — пункт New Table Group.
Пункт Group selected tables показывает справа свои клавиши T, затем G, а пункт New Table Group — Alt + G (Windows/Linux) или ⌥ + G (Mac).
Скрытие групп
Пункт View Option → Table Groups в контекстном меню холста показывает или скрывает все группы. Его флажок установлен по умолчанию — см. Параметры вида таблиц.
Если флажок снят, рамки групп и цвета групп на заголовках таблиц исчезают с холста, мини-карты и экспортированных изображений, а полосы прокрутки и мини-карта больше не оставляют места для групп. Ничто не перемещается и не меняет размер, и каждая таблица остается в своей группе.
Скрытие групп снимает с них выделение, завершает рисование группы через New Table Group и закрывает открытое поле редактирования имени.
Пока группы скрыты:
- Пункты
New Table GroupиGroup selected tablesне предлагаются в меню, как и командыNew Table GroupиGroup Selected Tablesв Быстром поиске, а на панели инструментов холста не отображается кнопкаNew Table Group. ПунктRemove from groupпо-прежнему предлагается. - Сочетания
Alt + G(Windows/Linux) или⌥ + G(Mac), а такжеT, затемGничего не делают. - Перетаскивание таблиц не меняет их группы, а рамка выделения не захватывает группы.
- В Обозревателе не отображается папка
Table Groups, а Поиск и замена не находит и не заменяет имена групп, даже если кнопкаTable group namesвключена. - Автоматическое размещение по-прежнему держит таблицы каждой группы вместе, вкладка «Схема SQL» по-прежнему предлагает выбор групп, DBML по-прежнему записывает их, а Импорт с добавлением по-прежнему размещает добавленное ниже скрытых рамок.
Этот выбор сохраняется в документе и записывается в историю изменений, как и другие переключатели меню «Параметры вида».
Автоматическое размещение
Каждый режим Автоматического размещения держит таблицы каждой группы вместе независимо от того, отображаются ли группы.
- Режим
Forceперемещает каждую группу с ее таблицами как единый блок, причем таблицы сохраняют свои места внутри нее, и держит рамку каждой группы на расстоянии не менее100pxот других групп и от таблиц, не входящих ни в одну группу. Предварительный просмотр показывает каждую группу там, куда она будет перемещена. - Режимы
Flow,Tree - verticalиTree - horizontalразмещают таблицы каждой группы внутри группы, а сами группы располагают по связям между ними, размещая вокруг них таблицы, не входящие ни в одну группу.
После этого каждая группа, в которой есть таблицы, подгоняется под них: ее рамка выравнивается по их границам с отступом 24px и строкой заголовка. Группа без таблиц сохраняет свое место и размер.
Новое размещение таблиц и групп составляет один шаг отмены.
Импорт DBML так же подгоняет каждую группу под ее таблицы, где бы они ни были размещены, — см. DBML.
Схема SQL по группам
Вкладка «Схема SQL» может выводить только таблицы выбранных групп.
Пока в документе есть группа, отображаемая или скрытая, на панели параметров вкладки в разделе This window only есть строка Tables с флажком All, флажком для каждой группы и флажком No group для таблиц, не входящих ни в одну группу, — см. Таблицы.
Этот выбор относится к окну редактора и не сохраняется в документе.
Импорт, экспорт и копирование
- DBML переносит группы в обоих направлениях. Импорт DBML превращает каждый блок
TableGroupв группу — см. DBML, — а целевой форматDBMLГенератора кода записывает блокTableGroupдля каждой группы, в которой есть таблица, — см. Генератор кода. - JSON-файл сохраняет свои группы. Никакой другой формат их не переносит: импорт SQL, GraphQL и AML не создает групп, а Схема SQL и другие целевые форматы Генератора кода их не записывают.
- Импорт с добавлением добавляет группы файла как новые группы с их таблицами и, пока группы отображаются, выделяет их вместе с новыми таблицами, поэтому перетаскивание добавленного блока переносит и его группы.
- На экспортированном изображении отображаемые группы рисуются позади таблиц, а цвета групп — на заголовках таблиц.
- Копирование и вставка, а также дублирование с помощью клавиши
Altникогда не копируют группу — см. Копирование и вставка таблиц и заметок и Добавление и исключение таблиц.
Режим только для чтения
В редакторе с атрибутом readonly группы рисуются и перечисляются в Обозревателе как обычно, их можно выделять и переходить к ним, но нельзя изменять:
- Нажатие на строку заголовка выделяет группу и ничего не перемещает. Маркеров изменения размера и кнопки
xнет. - Двойной щелчок по строке заголовка не открывает поле редактирования имени, а в меню группы есть только пункт
Select tables. - В меню холста нет пункта
New Table Group, в меню таблицы нет пунктовGroup selected tablesиRemove from group, а Быстрый поиск не показывает ни одной из команд для групп. Рисование группы черезNew Table Groupзавершается, когда редактор переходит в режим только для чтения. - Панель инструментов холста не показывает ни одной из своих кнопок добавления, в том числе
New Table Group, и сочетанияAlt + G(Windows/Linux) или⌥ + G(Mac), а такжеT, затемGничего не делают. - Параметр вида
Table Groupsничего не меняет, как и все пункты меню «Параметры вида». - Выбор в строке
Tablesна вкладке «Схема SQL» по-прежнему работает.