Copy & Paste
테이블을 복사하고 붙여 넣어 스키마의 일부를 빠르게 재사용할 수 있습니다. Ainecto는 컬럼, 타입, 인덱스까지 포함한 전체 테이블 정의를 복사하며, 함께 선택한 테이블 사이의 외래 키 관계도 보존합니다.
테이블 복사
캔버스에서 하나 이상의 테이블을 선택한 뒤 다음 중 하나를 사용합니다.
- Keyboard:
Ctrl+C(Windows/Linux) 또는Cmd+C(Mac) - Context menu: 선택 항목 우클릭 → Copy
선택한 테이블과 컬럼, 타입, 제약, 인덱스가 clipboard에 기록됩니다.
테이블 붙여 넣기
복사한 테이블은 같은 다이어그램 또는 다른 다이어그램에 붙여 넣을 수 있습니다.
- Keyboard:
Ctrl+V(Windows/Linux) 또는Cmd+V(Mac) - Context menu: 빈 캔버스 우클릭 → Paste
붙여 넣을 때 일어나는 일
이름 자동 변경
기존 테이블과 충돌하지 않도록 이름이 자동 변경됩니다.
| 원본 | 첫 번째 paste | 두 번째 paste |
|---|---|---|
users | users_copy | users_copy2 |
orders | orders_copy | orders_copy2 |
_copy suffix는 다이어그램 안에서 모든 테이블명이 고유하도록 보장합니다.
새 UUID
붙여 넣은 각 테이블은 새 UUID를 받습니다. 복사본은 원본과 완전히 독립적이며, 복사본을 수정해도 원본은 바뀌지 않습니다.
위치 offset
붙여 넣은 테이블은 현재 viewport 중앙 근처에 배치되고 약간 offset됩니다. 방금 붙여 넣은 항목을 쉽게 볼 수 있습니다.
외래 키 보존
여러 테이블을 복사했을 때 그 테이블 사이의 외래 키 관계는 paste에 포함됩니다.
예를 들어 users와 orders를 함께 선택하고 orders.user_id가 users.id를 참조한다면 paste 결과는 다음과 같습니다.
users_copy,orders_copyorders_copy.user_id→users_copy.id새 ref
선택 범위 밖의 테이블을 참조하는 FK는 복사되지 않습니다. source와 target 테이블이 모두 선택된 ref만 복제됩니다.
Paste 후 자동 저장
붙여 넣은 테이블은 batch API로 서버에 자동 저장됩니다. paste 후 Ctrl+S를 따로 누를 필요가 없습니다. 새 테이블과 복사된 ref는 즉시 지속화됩니다.
자동 선택
Paste 후 새로 생성된 테이블은 캔버스에서 자동 선택됩니다. 추가 클릭 없이 바로 원하는 위치로 이동할 수 있습니다.
Cross-tab paste
Ainecto는 가능한 경우 OS clipboard(navigator.clipboard API)를 사용합니다.
- 한 브라우저 탭에서 테이블을 복사합니다.
- 다른 탭의 다른 다이어그램으로 이동합니다.
- Paste하면 두 번째 다이어그램에 테이블이 나타납니다.
여러 다이어그램에서 표준 테이블 묶음을 재사용할 때 유용합니다.
팁
- Copy + paste는 완전히 undoable합니다.
Ctrl+Z한 번으로 붙여 넣은 모든 테이블을 제거할 수 있습니다. - 테이블 그룹과 함께 쓰면 스키마의 논리 구간을 통째로 복사해 다른 위치에서 재구성하기 좋습니다.
- 큰 스키마에서는
id,created_at,updated_at같은 표준 컬럼을 가진 template table을 copy/paste로 만든 뒤 커스터마이즈하세요.