方言を合わせる
方言の選択は構文と識別子の解釈を変えます。SQLの方言変換はしません。MySQLではテーブル単位のFOREIGN KEYを使い、ほかの2方言では列のREFERENCESも扱います。
- 方言を変えると再解析が終わるまでコピーと保存を無効にします。
データベース・SQLツール
入力したDDLを図、列一覧、構造データで確認します。最初に元のSQLと同じ方言を選んでください。
SQLを入力するかサンプルを選んでください。
ブラウザー内で処理します。データベースへの接続や履歴の保存はありません。
CREATE TABLEと通常の列を指定したCREATE INDEXのみ対応。明示的な外部キーだけを結び、SQLは実行しません。
上限は50,000 UTF-16単位、50テーブル、1,000列。キー・インデックス・CHECK・外部キーは合計200件。列は50件ずつ表示します。
TypeScriptは取得行の型です。大きな整数と精密な小数はstring、不明な型とSQLiteの列はunknownです。ドライバーの返却形式を確認してください。
結果が古くなっています。現在の入力を処理してから書き出してください。
SQLからER図を作ると、接続先のないテーブル定義書でもレビューを始められます。テーブル名を並べるだけでは見落としやすい複合キーや、別のファイルにしか存在しない参照先を確認するための画面です。
例にはNULL許可列、一意キー、通常のインデックス、小数型を含めています。DDL可視化の結果と元の定義を見比べて、実際に宣言された情報の範囲を把握してください。
図にある関係と、入力からは分からない関係を区別します。
SQLからER図への変換では、外部キーがあるテーブルだけをつなぎます。入力にない参照先は破線の外部ノードとして残すため、一部だけのDDLを完全な設計図と取り違えにくくなります。
図は依存先の把握に、JSONは構造の受け渡しに、TypeScriptは取得行の型のたたき台に使えます。表示を切り替えても、元になる解析結果は同じです。
方言の選択は構文と識別子の解釈を変えます。SQLの方言変換はしません。MySQLではテーブル単位のFOREIGN KEYを使い、ほかの2方言では列のREFERENCESも扱います。
部分的なDDLでは、参照先のテーブルが含まれていないことがあります。破線ノードと対象列を確認し、必要なCREATE TABLEを追加してください。
デフォルト値があっても取得行のプロパティは省略可能になりません。精密な数値はstring、既知のNULL許可型はnullとの共用体になります。
MySQL、PostgreSQL、SQLiteの対応するDDLを読み取ります。引用符付き識別子と修飾テーブル名を保持し、PostgreSQLの引用符なし名称は小文字に正規化します。
複合主キーと一意キーは列順を持つ一組として保存します。外部キーの両側の列も順に対応させ、中間テーブルを勝手に多対多の業務関係へ置き換えません。
型の表記、NULL許可、主キー所属を一覧で確認できます。列定義を開くとDEFAULT、CHECK、生成列の句も原文で読めます。インデックスは列順と昇降順を残します。
テーブル、列、キー、インデックス、検査定義、参照先をまとめたスナップショットを保存します。未解決の外部参照も残ります。JSON Schemaによるデータ検証とは異なる出力です。
安全な連番のインターフェース名と引用符付きのプロパティ名を生成します。日時はstring、バイナリはUint8Array、JSONや不明な型はunknownです。実際のドライバー設定との照合が必要です。
ER図をSVGとして保存できます。各カードでは先頭5列を示し、長い名前は短縮することがあります。列一覧とJSONには全項目を残すため、概観と詳細を併せて確認できます。
データベースへの接続は不要です。必要なのはCREATE TABLEなどの対応DDLだけです。サーバーの権限やデータ、設定は参照しないので、構文解析が成功しても実際のデータベースで実行できるとは限りません。
MySQL、PostgreSQL、SQLiteを明示的に選択します。対応するCREATE TABLEと単純なCREATE INDEXが対象で、各製品のすべてのDDL構文を網羅するものではありません。エラー位置を確認し、未対応の句を分けてください。
図の列プレビューでは主キーを記号で示し、外部キーを矢印で表します。列とキーの表示では複合キーの全列を順序付きで確認できます。参照先が欠ける場合は外部・未解決と明記されます。
テーブル定義の検討やデータベース設計の課題に使えます。ただし、業務要件や正規化の正しさを自動評価するツールではありません。入力した制約と課題の要件を、自分で対応づけて説明する必要があります。
自然言語からDDLや関係を生成する機能はありません。まずテーブル、列、主キー、外部キーをSQLで記述してください。名前の類似から関係を補うこともしないため、図の根拠を元の定義で確認できます。
整形の問題を見つけましたか?