シンプルなJSONからCREATE TABLE文を生成する
フラットなJSONオブジェクトを正しい型のカラムを持つSQL CREATE TABLE文に変換する方法を学びます。JSONからDDLへのマッピングの基本を解説。
Basic Tables
詳細な説明
JSONからCREATE TABLEへ
最もシンプルな変換は、フラットなJSONオブジェクトからCREATE TABLE文を生成することです。各キーがカラム名になり、JSONの値の型がSQLのデータ型を決定します。
JSON例
{
"id": 1,
"name": "Alice",
"email": "alice@example.com",
"age": 30,
"is_active": true
}
生成されるSQL
CREATE TABLE users (
id INTEGER NOT NULL,
name VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL,
age INTEGER NOT NULL,
is_active BOOLEAN NOT NULL
);
型マッピングルール
コンバーターは以下のデフォルトマッピングを適用します:
| JSON型 | SQL型 |
|---|---|
| number(整数) | INTEGER |
| number(小数) | DECIMAL または DOUBLE PRECISION |
| string | VARCHAR(255) |
| boolean | BOOLEAN |
| null | コンテキストから推論、または TEXT |
テーブル命名
デフォルトでは、コンバーターはルートキーからテーブル名を導出するか、my_tableのような汎用名を使用します。ツールのオプションでオーバーライドできます。ベストプラクティスは、テーブル名にsnake_caseと複数形の名詞を使用することです(例:users、order_items)。
カラム命名
JSONキーがcamelCaseの場合、snake_caseに変換されます。例えば、firstNameはfirst_nameになります。これはPostgreSQL、MySQL、およびほとんどのORMで使用されるSQL規約に従っています。
シンプルなフラットオブジェクトは、他のすべての変換の基礎です。この基本的なマッピングを理解すれば、ネストされたオブジェクト、配列、制約の処理に進むことができます。
ユースケース
APIレスポンスからサンプルJSONレコードを取得し、DDLを手動で書くことなく、そのデータを格納できるデータベーステーブルを素早くスキャフォールドしたい場合に使用します。