CREATE TABLE 文をインポートしてテーブルを編集
DDLBuilder のワークスペースを開き、以下の手順でインポートします。関連するテーブルを取り込んだ後は、外部キーと ER 図で関係を確認し、ORM モデルを生成できます。
このガイドでは、既存の SQL スクリプト、一括 DDL、または構造化データファイル(CSV、Excel、JSON Schema)を解析し、編集可能なテーブルモデルとして取り込む手順を解説します。
概要
既存システムのマイグレーション、レガシー DB のリファクタリング、Excel のデータ定義書や外部 API 仕様からの取り込みなど、ゼロからの手動入力を削減して迅速にテーブル構造を構築できます。
主な操作手順
1. SQL のリバースインポート(単一・複数テーブル)
DDLBuilder は**「検証 → プレビュー → 確定」**の安全な 3 ステップインポート方式を採用しています。
- 上部操作バーの**「SQL インポート」**をクリックします。
- インポート元のデータベース方言を選択し、SQL スクリプトを貼り付けます(単一または複数の
CREATE TABLE、CREATE INDEX、ALTER TABLE、GRANT文に対応)。 - 「次へ」をクリックして構文解析と構造検証を行います。
- プレビュー画面での確認と微調整:
- 解析されたカラム、型、主キー、インデックス、権限対象を確認します。
- プレビュー上でカラムのドラッグ並べ替えや不要なカラムの削除を直接行えます。
- 複数テーブルの解析時、同名衝突が検出された場合は**「上書き」「スキップ」「自動リネーム」**のマージ戦略を選択できます。
- 「インポートを確定」をクリックすると、ワークスペースへアトミックに反映されます。SQL にスキーマ名が含まれている場合(例:
CREATE TABLE sales.orders)、salesがSchema Nameに、ordersがテーブル名に自動分割して設定されます。
2. 構造化データファイルのインポート(CSV / Excel / JSON Schema)
注文明細や顧客一覧の実データは 業務データのインポート を使用してください。本ページの CSV / Excel はフィールド定義一覧を扱います。
- 上部の**「データインポート」**をクリックし、対象のファイル形式を選択します。
- CSV ファイル: 先頭行はフィールド名・SQL 型・コメントの見出しで、後続の各行が 1 フィールドの定義です。
- Excel ファイル(.xlsx / .xls): 各シートのフィールド定義一覧から名前・明示的な SQL 型・コメントを読み込みます。
- JSON Schema:
propertiesに定義されたフィールド、データ型、フォーマット、説明文を解析します。
- ファイルアップロード後、プレビュー画面で推測された型を確認し、必要に応じて手動で調整します。
- インポートを確定すると、抽出されたカラム構造がワークスペースに反映されます。
サポート構文とファイル仕様
| 形式 / ソース | 対応構文・仕様 | 解析動作の補足 |
|---|---|---|
| SQL スクリプト | CREATE TABLE、CREATE INDEX、ALTER TABLE、GRANT | 制約、デフォルト値、コメント、複合インデックス、権限を正確に抽出 |
| CSV ファイル | UTF-8 エンコード、カンマ区切り、1行目ヘッダー | フィールド名・明示的な SQL 型・コメントを読み込む |
| Excel ファイル | .xlsx および .xls 形式 | 各シートのフィールド定義一覧を読み込む |
| JSON Schema | Draft-07 / 2020-12 準拠スキーマ | properties の string/integer/boolean 等を対応する DB 型へ変換 |
完了のチェックリスト
- [ ] インポート後、テーブル名、カラム一覧、制約、インデックスがワークスペースに正確に復元されている。
- [ ] スキーマ名付きの SQL の場合、
Schema Nameとテーブル名が正しく分離されている。 - [ ] 右側の DDL/DCL 出力パネルに対象方言の正確な SQL が再生成されている。
注意事項とトラブルシューティング
方言の不一致に関する確認
インポート時に構文エラーが発生する場合は、ダイアログ内のインポート元データベース方言が SQL の実際の構文と一致しているか確認してください(例: Oracle 構文を MySQL パーサーで解析していないか)。
- 巨大な SQL スクリプトの分割: 数十テーブルを含む大規模な SQL ダンプファイルを解析する際は、ブラウザの応答性を保つためドメインやモジュールごとに分割してインポートすることをお勧めします。
- 文字コードと保護: CSV は UTF-8 で保存してください。Excel ファイルはパスワード保護を解除してからアップロードしてください。
- 深い JSON ネスト: 階層が深い複雑な JSON Schema は、事前に主要エンティティ属性をフラット化してから取り込むことを推奨します。