본문으로 건너뛰기

테이블 그룹

테이블 그룹은 ERD 캔버스에서 관련된 테이블 뒤에 그려지는 이름과 색상이 있는 박스로, 어떤 테이블이 함께 묶이는지 보여 줍니다.
테이블은 최대 하나의 그룹에만 속합니다. 그룹은 각 테이블이 어느 그룹에 속하는지와 함께 다이어그램에 저장됩니다.

박스 위쪽에는 제목 표시줄이 있으며, 그룹 아이콘, 굵게 표시된 그룹 이름, 그리고 포인터가 그룹 위에 있는 동안 그룹을 삭제하는 x가 놓입니다. 그룹 삭제 항목을 참고하세요. 이름이 없는 그룹은 unnamed로 표시되고, 제목 표시줄에 다 들어가지 않는 긴 이름은 …로 잘립니다.
박스는 항상 자신의 테이블을 담습니다. 지정된 크기를 유지하지만, 각 테이블의 둘레에 24px의 여유를 두고 그 위에 제목 표시줄을 둔 채 테이블을 안에 담도록 늘어납니다. 커지는 테이블은 박스도 함께 늘리며, 중앙이 박스 안에 있는 채로 가장자리 가까이에 놓인 테이블도 마찬가지입니다. 테이블을 드래그하는 동안에는 박스가 늘어나지도 줄어들지도 않습니다. 늘어난 크기는 저장되지 않으며, 테이블에 더 이상 그 공간이 필요하지 않으면 박스는 원래 크기로 돌아갑니다.

그룹은 캔버스의 다른 모든 것, 즉 테이블, 메모, 관계선보다 뒤에 그려집니다.
그룹이 겹치는 곳에서는 마지막으로 누르거나 추가한 그룹이 앞에 그려지며, 어떤 그룹의 본문도 다른 그룹의 제목 표시줄을 가리지 않습니다. 이 순서는 저장되지 않으므로, 다이어그램을 다시 열면 그룹은 추가된 순서대로 쌓입니다.
그룹은 ERD 캔버스, 미니맵, 내보낸 이미지에 표시됩니다. Visualization 탭은 두 모드 모두에서 그룹도 그룹 색상도 그리지 않습니다.

코딩 에이전트도 그룹을 만들고 변경할 수 있으며, 고른 그룹의 DDL을 읽을 수 있습니다. MCP 도구의 테이블 그룹 항목을 참고하세요.

New Table Group으로 orders와 payments 위에 그룹을 그리고 이름을 Billing으로 지은 뒤, order_items를 그룹에 넣고 그룹을 이동하고 크기를 조절하는 모습

그룹 생성​

그룹을 생성하는 방법은 두 가지입니다. 둘 다 단축키나 캔버스 툴바 버튼이 없으며, 읽기 전용 에디터에서나 그룹을 숨긴 동안에는 제공되지 않습니다.

그룹 그리기​

캔버스 컨텍스트 메뉴에서 New Table과 New Memo 다음에 있는 New Table Group을 고르거나, ERD 탭의 빠른 검색에서 고릅니다. 그런 다음 캔버스 위에 박스를 드래그합니다.
그리기가 준비된 동안에는 커서가 십자선으로 바뀌며, 누르는 곳이 테이블 위라도 그 아래의 대상을 선택하거나 이동하지 않고 그 자리에서 박스를 시작합니다. 이때 캔버스 툴바는 손 도구도 포인터도 선택된 것으로 표시하지 않습니다.

버튼을 놓으면 그 박스에 그룹이 추가되며, 드래그가 아무리 짧아도 제목 표시줄을 포함해 너비 160px, 높이 100px보다 작아지지 않습니다. 드래그하지 않고 클릭만 하면 클릭한 지점을 왼쪽 위 모서리로 하는 너비 480px, 높이 320px의 그룹이 추가됩니다.
어느 그룹에도 속하지 않은 테이블 중 중앙이 새 박스 안에 있는 테이블은 모두 그 그룹에 들어갑니다. 이미 다른 그룹에 속한 테이블은 그 그룹에 그대로 남습니다.

마우스 가운데 버튼은 그대로 캔버스 화면을 이동하며, 그리기 준비 상태를 유지합니다. 다음의 경우에는 그룹을 추가하지 않고 그리기가 끝납니다.

  • 누르기 전이나 드래그하는 중의 Escape. 누르기 전에는 선택이 그대로 남으며, 박스를 시작하는 누르기에서 이미 선택이 해제됩니다.
  • 선택을 해제하는 마우스 오른쪽 클릭. 컨텍스트 메뉴는 열리지 않습니다.
  • Space나 캔버스 툴바를 사용한 손 도구 전환, 툴바의 포인터 클릭, 관계 시작.
  • 다른 탭으로 전환, 그룹 숨기기, 에디터의 읽기 전용 전환.

선택한 테이블 그룹화​

테이블을 하나 이상 선택한 뒤 테이블 컨텍스트 메뉴에서 Group selected tables를 고르거나, 빠른 검색에서 Group Selected Tables를 고릅니다. 빠른 검색은 테이블이 선택되어 있는 동안 이 항목을 표시합니다.
새 그룹은 선택한 테이블을 사방에 24px의 여유를 두고 그 위에 제목 표시줄을 두어 감싸도록 그려집니다. 선택한 모든 테이블이 원래 속해 있던 그룹에서 빠져 새 그룹에 들어가며, 테이블이 빠져나간 그룹은 비게 되더라도 그대로 남습니다. 선택에 포함된 메모는 제외됩니다.

Group selected tables로 categories와 products를 그룹으로 묶고 이름을 Catalog로 지은 뒤, 그룹 메뉴에서 Violet 색상을 지정해 두 테이블의 헤더에 그 색상이 입혀지는 모습

어느 방법이든 새 그룹은 이름도 색상도 없습니다. 새 그룹만 선택되고, 제목 표시줄 위에 이름 입력란이 열려 바로 이름을 입력할 수 있습니다. 그룹 이름 지정 항목을 참고하세요.
그룹과 그 그룹에 들어간 테이블은 Undo 한 단계이며, 입력한 이름은 또 다른 한 단계입니다.

그룹 이름 지정​

그룹 이름은 제목 표시줄 위에 열리는 입력란에서 편집합니다. 입력란은 그룹이 생성되면 자동으로 열리며, 제목 표시줄을 더블 클릭하거나 그룹 컨텍스트 메뉴에서 Rename을 골라도 열립니다.
Enter를 누르거나 다른 곳을 클릭하면 이름이 저장됩니다. Escape는 이름을 바꾸지 않고 입력란을 닫으며 그룹을 선택된 상태로 두고, Escape를 한 번 더 누르면 선택이 해제됩니다.
이름을 바꾸면 Undo 한 단계가 되며, 이름을 바꾸지 않고 저장하면 아무것도 기록되지 않습니다. 비어 있거나 공백뿐인 이름은 unnamed로 표시됩니다.
입력란이 열려 있는 동안에는 테이블 셀을 편집할 때와 마찬가지로 캔버스 단축키가 동작하지 않으며, 빠른 검색과 찾기와 바꾸기 단축키로도 아무것도 열리지 않습니다.

그룹 이름은 빠른 검색이나 찾기와 바꾸기로 검색되지 않습니다.

그룹 색상 지정​

그룹 컨텍스트 메뉴에서 Color를 고르면 그룹의 현재 색상으로 색상 선택기가 열립니다.
테이블과 메모에서처럼 색상 선택기는 선택된 모든 테이블, 메모, 그룹에 색상을 지정하며, 메뉴의 Remove color나 색상 선택기의 No color는 그 모두의 색상을 지웁니다. 테이블, 메모 색상 지정 문서를 참고하세요. 그룹의 색상은 색상 선택기의 Document colors에도 표시됩니다.

색상이 지정된 그룹은 제목 표시줄과 외곽선을 그 색상으로, 본문을 그 색상의 옅은 색조로 그립니다. 색상이 없는 그룹은 테마의 중립적인 회색을 사용합니다.
색상이 지정된 그룹의 모든 테이블은 헤더 전체에 그룹의 색상을 입히고 왼쪽 가장자리에는 자신의 색상을 유지하므로, 두 색상이 모두 보입니다.
이런 헤더의 텍스트와 버튼은 흰색으로 바뀌며, 밝은 색상이라 검은색이 훨씬 잘 읽히면 검은색으로 바뀝니다. 그룹 제목 표시줄의 이름, 아이콘, x도 마찬가지입니다. 색상 선택기의 프리셋 견본 중에서는 Orange, Amber, Yellow, Lime이 검은색을, 나머지는 흰색을 사용합니다.
그룹에 색상이 없는 동안, 그룹이 숨겨진 동안, 테이블이 이름만 남도록 축소되는 70% 이하의 배율에서, 그리고 Visualization 탭에서는 테이블이 자신의 헤더를 그대로 유지합니다.

색상 변경은 테이블과 메모에서와 마찬가지로 Undo 히스토리에 기록됩니다.

그룹 선택​

그룹의 제목 표시줄을 클릭하면 그 그룹만 선택되고, Ctrl + click (Windows/Linux) or ⌘ + click (Mac)하면 선택에 추가됩니다.
이미 선택된 그룹의 제목 표시줄을 누르면 선택 전체가 유지되므로, 이어서 드래그하면 선택 전체가 이동합니다.
제목 표시줄을 누르거나 그룹을 마우스 오른쪽 클릭하면 그 그룹이 다른 그룹보다 앞으로 오고, 그 그룹의 테이블이 다른 모든 테이블과 메모보다 앞으로 옵니다.

본문, 즉 제목 표시줄 아래 영역은 마우스 왼쪽 버튼에는 빈 캔버스로 취급됩니다. 본문을 드래그하면 화면이 이동하고, Ctrl + drag (Windows/Linux) or ⌘ + drag (Mac)하면 선택 박스가 그려지며, 클릭하면 선택이 해제됩니다. 본문 위의 테이블, 메모, 관계선은 평소처럼 포인터에 반응합니다.

선택 박스는 그룹의 박스 전체를 감쌀 때만 그룹을 선택하므로, 그룹 안에서 그린 선택 박스는 그룹을 빼고 테이블만 선택합니다. 다중 선택 문서를 참고하세요.
Ctrl + A (Windows/Linux) or ⌘ + A (Mac)는 그룹을 선택하지 않습니다.

그룹 컨텍스트 메뉴의 Select tables는 그룹 자체는 빼고 그룹의 테이블로 선택을 바꾸므로, 다음 명령은 테이블에만 적용됩니다.
복사나 테이블 포커스처럼 선택된 그룹은 건너뛰고 테이블에만 동작하는 명령 앞에 사용하세요.

선택된 그룹의 외곽선은 선택 색상으로 바뀝니다. 공동 편집 세션에서는 다른 참여자가 선택한 그룹이 그 참여자의 색상으로 둘러싸여 표시됩니다.

그룹 이동과 크기 조절​

그룹의 제목 표시줄을 드래그하면 그룹이 그 안의 모든 테이블과 함께 이동합니다.
그룹이 더 큰 선택의 일부이면 선택 전체가 함께 이동하며, 선택되어 있으면서 그룹에도 속한 테이블은 한 번만 이동합니다.
드래그는 포인터가 조금 움직인 뒤에야 시작되므로, 제목 표시줄을 클릭하거나 더블 클릭해도 클릭으로 남습니다. 제목 표시줄에서 Alt + drag하면 일반 드래그처럼 그룹이 이동하며, 그룹은 복제되지 않습니다.
이동은 함께 옮겨지는 모든 테이블을 포함해 Undo 한 단계입니다.

테이블 하나만 드래그하면 그 테이블만 이동하며, 그 테이블을 그룹에 넣거나 그룹에서 뺄 수 있습니다. 테이블 추가와 제거 항목을 참고하세요.

모든 그룹은 메모처럼 선택 여부와 상관없이 네 변과 네 모서리에 크기 조절 핸들이 있습니다.
마우스 왼쪽 버튼으로 핸들을 드래그하면 박스가 포인터를 따라오고, 버튼을 놓을 때 새 크기가 Undo 한 단계로 저장됩니다.
그룹은 너비 160px, 높이 100px보다 작게 만들 수 없으며, 24px의 여유와 제목 표시줄을 포함한 테이블 영역보다도 작게 만들 수 없습니다. 포인터를 아무리 멀리 움직여도 가장자리는 그 지점에서 멈춥니다.

테이블 추가와 제거​

테이블은 놓는 위치에 따라 그룹에 들어가거나 그룹에서 빠집니다.
테이블을 드래그했다가 놓으면, 드래그한 테이블 중 선택된 그룹에 실려 이동하지 않는 각 테이블은 그 중앙을 기준으로 판단됩니다. 중앙이 박스 안에 있는 그룹 중 가장 위에 있는 그룹에 들어가거나, 중앙이 어느 그룹의 박스에도 없으면 속해 있던 그룹에서 빠집니다. 가장 위에 있는 그룹은 가장 앞에 그려진 그룹입니다.
드래그로 움직이지 않은 그룹은 드래그를 시작할 때의 박스를 유지하므로, 자신의 그룹 안에서 살짝 옮긴 테이블은 그 그룹에 남으며, 그룹에서 빼려면 중앙이 그 박스 밖으로 나갈 때까지 드래그해야 합니다.
드래그하는 동안에는 놓았을 때 테이블이 들어갈 각 그룹에 외곽선이 표시됩니다.

마지막 움직임 후 약 200ms 안에 놓으면 그룹 변경은 드래그의 Undo 단계에 포함되므로, Undo 한 번으로 테이블이 원래 위치와 원래 그룹으로 돌아갑니다. 놓기 전에 더 오래 멈췄다면 그룹 변경은 별도의 단계가 됩니다. 동작 하나가 한 단계 문서를 참고하세요.
클릭이나 몇 픽셀 정도의 드래그는 그룹을 바꾸지 않으며, 그룹이 숨겨진 동안에는 어떤 테이블도 그룹이 바뀌지 않습니다.

그룹에 속한 테이블을 바꾸는 다른 방법은 다음과 같습니다.

  • 테이블 컨텍스트 메뉴의 Remove from group은 선택된 모든 테이블을 각자의 그룹에서 뺍니다. 선택된 테이블이 그룹에 속해 있는 동안 표시되며, 그룹이 숨겨진 동안에도 표시되고, Undo 한 단계입니다.
  • Group selected tables는 선택한 테이블을 새 그룹으로 옮깁니다. 선택한 테이블 그룹화 항목을 참고하세요.
  • 그룹을 삭제하면 그 그룹의 테이블은 어느 그룹에도 속하지 않게 됩니다.

붙여넣거나 Alt로 복제한 테이블은 그룹의 박스 안에 놓이더라도 어느 그룹에도 속하지 않습니다. 이후에 드래그하면 놓는 위치에 따른 규칙이 적용됩니다.

그룹 삭제​

그룹을 삭제해도 그 테이블은 삭제되지 않습니다. 테이블은 어느 그룹에도 속하지 않은 채 제자리에 남습니다.

  • 포인터가 그룹 위에 있는 동안 제목 표시줄 끝에 표시되는 x는 그 그룹만 삭제합니다.
  • 그룹 컨텍스트 메뉴의 Delete는 그 그룹을 삭제합니다. 그룹이 두 개 이상 선택된 항목 중 하나이면 이 항목은 Delete selected로 표시되고 선택된 테이블, 메모, 그룹을 모두 삭제합니다.
  • 그룹이 선택되어 있으면 Delete 또는 Backspace가 선택된 그룹을 선택된 테이블, 메모와 함께 삭제하며, Ctrl + Backspace와 Ctrl + Delete (Windows/Linux) or ⌘ + Backspace와 ⌘ + Delete (Mac)도 마찬가지입니다. 테이블, 메모 삭제 문서를 참고하세요.

각 삭제는 Undo 한 단계이며, Undo하면 그룹이 그 테이블을 담은 채로 돌아옵니다.

그룹 메뉴​

그룹의 제목 표시줄, 본문, 가장자리를 마우스 오른쪽 클릭하면 그룹 메뉴가 열립니다. Mac에서는 Ctrl + click으로도 열리며, 터치스크린에서는 길게 눌러도 열립니다.
마우스 오른쪽 클릭은 먼저 그룹을 선택하며, 그룹이 이미 선택에 포함되어 있지 않으면 그 그룹만 선택합니다. 따라서 Color와 Delete selected는 그룹이 선택에 포함되어 있었을 때만 선택의 나머지 항목에도 적용됩니다.

  • Select tables: 그룹의 테이블만 선택합니다. 그룹 선택 항목을 참고하세요.
  • Rename: 이름 입력란을 엽니다. 그룹 이름 지정 항목을 참고하세요.
  • Color: 색상 선택기를 엽니다. 그룹 색상 지정 항목을 참고하세요.
  • Remove color: 선택된 항목 중 하나라도 색상이 있는 동안 표시됩니다.
  • Delete, 또는 그룹이 두 개 이상 선택된 항목 중 하나일 때는 Delete selected: 오른쪽에 Delete 키가 표시됩니다. 그룹 삭제 항목을 참고하세요.

테이블 컨텍스트 메뉴에는 Color와 Remove color 다음, Delete 항목 앞에 Group selected tables와 Remove from group이 추가되고, 캔버스 컨텍스트 메뉴에는 New Table Group이 추가됩니다.

그룹 숨기기​

캔버스 컨텍스트 메뉴의 View Option → Table Groups는 모든 그룹을 표시하거나 숨깁니다. 기본적으로 체크되어 있습니다. 테이블 보기 옵션 문서를 참고하세요.
체크를 해제하면 캔버스, 미니맵, 이미지 내보내기에서 그룹 박스와 테이블 헤더의 그룹 색상이 사라지며, 스크롤바와 미니맵도 더 이상 그룹을 위한 공간을 두지 않습니다. 아무것도 이동하거나 크기가 바뀌지 않으며, 모든 테이블은 각자의 그룹에 그대로 남습니다.
그룹을 숨기면 그룹의 선택이 해제되고, New Table Group 그리기가 끝나며, 열려 있는 이름 입력란이 닫힙니다.

그룹이 숨겨진 동안에는 다음과 같습니다.

  • 메뉴에 New Table Group과 Group selected tables가, 빠른 검색에 New Table Group과 Group Selected Tables가 표시되지 않습니다. Remove from group은 계속 표시됩니다.
  • 테이블을 드래그해도 그룹이 바뀌지 않으며, 선택 박스는 그룹을 선택하지 않습니다.
  • 자동 배치는 여전히 각 그룹의 테이블을 한데 모아 두고, Schema SQL 탭은 여전히 고를 수 있는 그룹을 제공하며, DBML은 여전히 그룹을 작성하고, 가져와서 추가는 여전히 숨겨진 박스 아래에 놓입니다.

이 선택은 다른 View Option 토글과 마찬가지로 문서에 저장되며 Undo 히스토리에 기록됩니다.

자동 배치​

모든 자동 배치는 그룹이 표시되어 있는지와 상관없이 각 그룹의 테이블을 한데 모아 둡니다.

  • Force는 각 그룹을 그 테이블과 함께 하나의 박스로 이동하며, 테이블은 박스 안에서 제자리를 유지합니다. 각 그룹의 박스는 다른 그룹과 어느 그룹에도 속하지 않은 테이블로부터 최소 100px 떨어집니다. 미리보기는 각 그룹을 이동할 위치에 표시합니다.
  • Flow, Tree - vertical, Tree - horizontal은 각 그룹의 테이블을 그룹 안에서 배치하고, 그룹 사이의 관계에 따라 그룹을 배치하며, 어느 그룹에도 속하지 않은 테이블은 그 주변에 배치합니다.

그런 다음 테이블이 들어 있는 각 그룹을 그 테이블에 맞춥니다. 그룹의 박스는 테이블의 경계에 24px의 여유와 제목 표시줄을 더한 크기가 됩니다. 테이블이 없는 그룹은 위치와 크기를 유지합니다.
테이블과 그룹의 배치는 Undo 한 단계로 기록됩니다.

DBML 가져오기도 테이블이 어디에 배치되든 같은 방식으로 각 그룹을 그 테이블에 맞춥니다. DBML 문서를 참고하세요.

그룹별 Schema SQL​

Schema SQL 탭은 고른 그룹의 테이블만 작성할 수 있습니다.
문서에 그룹이 있으면 표시 여부와 상관없이 옵션 패널의 This window only 아래에 Tables 행이 표시되며, All, 각 그룹, 그리고 어느 그룹에도 속하지 않은 테이블을 뜻하는 No group의 체크박스가 있습니다. Tables 문서를 참고하세요.
이 선택은 에디터 창에 속하며 문서에 저장되지 않습니다.

가져오기, 내보내기, 복사​

  • DBML은 가져올 때와 생성할 때 모두 그룹을 유지합니다. DBML 가져오기는 각 TableGroup 블록을 그룹으로 만듭니다. DBML 문서를 참고하세요. Code Generator의 DBML은 테이블이 들어 있는 각 그룹마다 TableGroup 블록을 작성합니다. 코드 생성 문서를 참고하세요.
  • JSON 파일은 그룹을 유지합니다. 그 밖의 형식은 그룹을 담지 않습니다. SQL, GraphQL, AML 가져오기는 그룹을 가져오지 않으며, Schema SQL과 Code Generator의 다른 대상은 그룹을 작성하지 않습니다.
  • 가져와서 추가는 파일의 그룹을 그 테이블을 담은 새 그룹으로 가져오며, 그룹이 표시되어 있는 동안에는 새 테이블과 함께 그 그룹을 선택하므로, 추가된 묶음을 드래그하면 그룹도 함께 이동합니다.
  • 이미지 내보내기는 표시된 그룹을 테이블 뒤에 그리며, 테이블 헤더에 그룹 색상을 입힙니다.
  • 복사와 붙여넣기, 또는 Alt로 복제하기는 그룹을 복사하지 않습니다. 테이블, 메모 복사/붙여넣기 문서와 테이블 추가와 제거 항목을 참고하세요.

읽기 전용 에디터​

readonly 에디터에서는 그룹이 평소처럼 그려지고 선택할 수 있지만, 변경할 수는 없습니다.

  • 제목 표시줄을 누르면 그룹이 선택되기만 하고 아무것도 이동하지 않습니다. 크기 조절 핸들과 x가 없습니다.
  • 제목 표시줄을 더블 클릭해도 이름 입력란이 열리지 않으며, 그룹 메뉴에는 Select tables만 있습니다.
  • 캔버스 메뉴에는 New Table Group이, 테이블 메뉴에는 Group selected tables와 Remove from group이 없으며, 빠른 검색에도 두 그룹 명령이 표시되지 않습니다. 에디터가 읽기 전용으로 바뀌면 New Table Group 그리기가 끝납니다.
  • 모든 View Option과 마찬가지로 Table Groups 보기 옵션을 바꿔도 아무것도 바뀌지 않습니다.
  • Schema SQL 탭의 Tables 선택은 그대로 동작합니다.