SQL to TypeScript ジェネレーター
CREATE TABLE DDLをTypeScriptインターフェースに変換します。
このツールは気に入りましたか?portfolios.toolsを永遠に無料に保つのにご協力ください。
仕組み
CREATE TABLE SQL文をテキストエリアに貼り付けます。必要に応じてJSDocコメントを切り替えます。ツールはカラムを解析しTypeScriptインターフェースを生成します。pg_dump、Supabase SQLエディター、MySQL Workbenchスキーマスクリプトからエクスポートできます。解析に失敗する場合は外部キーALTER文を削除し、テーブル定義のみを貼り付けてください。金融アプリのschema firstワークフローは、APIルートハンドラーを書く前にここから始まることが多いです。ポートフォリオトラッカーと取引台帳スキーマは、標準のINTEGERとDECIMALカラムできれいに変換されます。 Portfolio ledger と 保有 tables で INTEGER と DECIMAL columns convert cleanly from pg_dump CREATE TABLE blocks. Export CREATE TABLE from Supabase dashboard or pg_dump without ownership と grant clauses for cleaner parse. Strip FOREIGN KEY と INDEX lines from pg_dump paste for cleaner column only parse.
適切な型、オプションマーカー、JSDoc注釈を含む生成されたTypeScriptインターフェースコードを確認します。プロジェクトにコピーまたはダウンロードしてください。ORM生成型と出力を比較し、nullableの不一致を検出します。スキーママイグレーション後に再生成し、フロントエンド型をデータベースと同期させます。生成インターフェースをQAチームと共有し、モックAPIレスポンスに対する契約テストに使います。生成型をマイグレーションファイルと一緒にバージョン管理し、監査証跡を残します。 Regenerate types 後 each migration: stale interfaces hide breaking column renames until runtime API errors surface. JSDoc option documents column defaults helping frontend forms show server side default values. 貼り付け:multiple CREATE TABLE blocks from migration folder to regenerate all entity interfaces in one click.
stale interfaces hide breaking column renames until runtime API errors surface. JSDoc option documents column defaults helping frontend forms show server side default values. 貼り付け:multiple CREATE TABLE blocks from migration folder to regenerate all entity interfaces in one click.
SQL to TypeScript ジェネレーター. 出力はTypeScriptインターフェース定義です。標準PostgreSQL/MySQL CREATE TABLE DDLをサポートします。Zodスキーマ、Prismaモデル、ランタイムバリデータは生成しません。本番の型安全性のため出力を手動で拡張してください。SupabaseとPlanetScaleエクスポートは迅速な型生成の貼り付けソースとして適しています。BIGINTカラムはnumberにマップされ、2^53を超えると精度を失う場合があります。 No Zod or Prisma output: extend interfaces で runtime validators 前 trusting browser parsed API data.
手順
- CREATE TABLE SQL文を貼り付ける
- JSDocを有効にしてドキュメンテーションコメントを追加する
- TypeScriptの出力を確認してコピーする
計算例
CREATE TABLE SQL文をテキストエリアに貼り付けます。必要に応じてJSDocコメントを切り替えます。ツールはカラムを解析しTypeScriptインターフェースを生成します。pg_dump、Supabase SQLエディター、MySQL Workbenchスキーマスクリプトからエクスポートできます。解析に失敗する場合は外部キーALTER文を削除し、テーブル定義のみを貼り付けてください。金融アプリのschema firstワークフローは、APIルートハンドラーを書く前にここから始まることが多いです。ポートフォリオトラッカーと取引台帳スキーマは、標準のINTEGERとDECIMALカラムできれいに変換されます。 Portfolio ledger と 保有 tables で INTEGER と DECIMAL columns convert cleanly from pg_dump CREATE TABLE blocks.
SQL to TypeScript ジェネレーター: 適切な型、オプションマーカー、JSDoc注釈を含む生成されたTypeScriptインターフェースコードを確認します。プロジェクトにコピーまたはダウンロードしてください。ORM生成型と出力を比較し、nullableの不一致を検出します。スキーママイグレーション後に再生成し、フロントエンド型をデータベースと同期させます。生成インターフェースをQAチームと共有し、モックAPIレスポンスに対する契約テストに使います。生成型をマイグレーションファイルと一緒にバージョン管理し、監査証跡を残します。 Regenerate types 後 each migration: stale interfaces hide breaking column renames until runtime API errors surface.
この計算機を使うタイミング
この計算機を使うタイミング: CREATE TABLE DDLをTypeScriptインターフェースに変換します。
SQL to TypeScript ジェネレーター. portfolios.tools
よくある間違い
よくある間違い: CREATE TABLE SQL文をテキストエリアに貼り付けます。必要に応じてJSDocコメントを切り替えます。ツールはカラムを解析しTypeScriptインターフェースを生成します。pg_dump、Supabase SQLエディター、MySQL Workbenchスキーマスクリプトからエクスポートできます。解析に失敗する場合は外部キーALTER文を削除し、テーブル定義のみを貼り付けてください。金融アプリのschema firstワークフローは、APIルートハンドラーを書く前にここから始まることが多いです。ポートフォリオトラッカーと取引台帳スキーマは、標準のINTEGERとDECIMALカラムできれいに変換されます。 Portfolio ledger と 保有 tables で INTEGER と DECIMAL columns convert cleanly from pg_dump CREATE TABLE blocks.
SQL to TypeScript ジェネレーター. 適切な型、オプションマーカー、JSDoc注釈を含む生成されたTypeScriptインターフェースコードを確認します。プロジェクトにコピーまたはダウンロードしてください。ORM生成型と出力を比較し、nullableの不一致を検出します。スキーママイグレーション後に再生成し、フロントエンド型をデータベースと同期させます。生成インターフェースをQAチームと共有し、モックAPIレスポンスに対する契約テストに使います。生成型をマイグレーションファイルと一緒にバージョン管理し、監査証跡を残します。 Regenerate types 後 each migration: stale interfaces hide breaking column renames until runtime API errors surface.
計算式
正規表現抽出:/CREATE\s+TABLE\s+(?:IF\s+NOT\s+EXISTS\s+)?[`"']?(\w+)[`"']?\s*\(([\s\S]*?)\)\s*;/gi。ルックアップテーブルによる型マッピング。カラムは型、null許容性、デフォルト値の検出とともに行ごとに解析されます。
出力はTypeScriptインターフェース定義です。標準PostgreSQL/MySQL CREATE TABLE DDLをサポートします。Zodスキーマ、Prismaモデル、ランタイムバリデータは生成しません。本番の型安全性のため出力を手動で拡張してください。SupabaseとPlanetScaleエクスポートは迅速な型生成の貼り付けソースとして適しています。BIGINTカラムはnumberにマップされ、2^53を超えると精度を失う場合があります。 No Zod or Prisma output: extend interfaces で runtime validators 前 trusting browser parsed API data. ENUM columns map to string union manually 後 export 時 want strict literal types. VARCHAR length not preserved in TypeScript type: all string columns map to plain string type. Extend output で Zod スキーマs manually 時 runtime validation required in browser apps.
制限と前提
出力はTypeScriptインターフェース定義です。標準PostgreSQL/MySQL CREATE TABLE DDLをサポートします。Zodスキーマ、Prismaモデル、ランタイムバリデータは生成しません。本番の型安全性のため出力を手動で拡張してください。SupabaseとPlanetScaleエクスポートは迅速な型生成の貼り付けソースとして適しています。BIGINTカラムはnumberにマップされ、2^53を超えると精度を失う場合があります。 No Zod or Prisma output: extend interfaces で runtime validators 前 trusting browser parsed API data. ENUM columns map to string union manually 後 export 時 want strict literal types. VARCHAR length not preserved in TypeScript type: all string columns map to plain string type. Extend output で Zod スキーマs manually 時 runtime validation required in browser apps. SQL to TypeScript ジェネレーター.
用語集
- SQLカラムはどのように解析されますか?
- パーサーは正規表現でCREATE TABLE文を抽出し、カラム名、SQL型、NOT NULLからのnull可否、デフォルト値を識別します。制約(PRIMARY、FOREIGN、UNIQUE、CHECK、INDEX)はスキップされます。複合型と生成カラムは部分的に解析される場合があります。括弧内の複数行カラム定義は行ごとに処理されます。カラム定義後のインラインコメントは解析前に除去されます。CHECK制約とGENERATED ALWAYS ASカラムは、エクスポート後に手動でTypeScript調整が必要です。 Regex parser skips CONSTRAINT lines と extracts column name type NOT NULL と DEFAULT per line.
- SQLからTypeScriptへの型マッピングは?
- VARCHAR、CHAR、TEXTはstringにマップします。INT、BIGINT、SERIAL、NUMERIC、DECIMAL、FLOAT、DOUBLEはnumberにマップします。BOOLEANはbooleanにマップします。TIMESTAMP、DATEはstringにマップします。UUIDはstringにマップします。JSONとJSONBはRecord<string, unknown>にマップします。ENUM型は、エクスポート後に手動でマッピングを拡張しない限りstringにマップします。SMALLINTとTINYINTもデフォルト参照テーブルでnumberにマップします。 PostgreSQL IF NOT EXISTS と MySQL backtick quotes both supported in CREATE TABLE paste.
- Assumption
- デフォルトではnullableカラムにオプショナル(?
代替手段との比較
API Mock Generatorは生成インターフェースに一致するサンプルJSONペイロードを作成します。Regex Transaction Parserは同じスキーマ上の金融アプリ向けCSVインポート形式の検証に役立ちます。Cron Market SchedulerはデータベーステーブルをTypeScript型付きAPIと同期するスケジュールETLジョブをサポートします。Enterprise Value Calculatorスキーマは財務諸表テーブルで類似のカラムパターンを共有することが多いです。DrizzleとKyselyユーザーは、推論スキーマ定義と並べてコンパニオン型として出力を貼り付けます。 YAML JSON Portfolio converter complements SQL first backends 時 config also lives in version control.
portfolios.tools 代替手段との比較 SQL to TypeScript ジェネレーター.
よくある質問
SQLカラムはどのように解析されますか?
パーサーは正規表現でCREATE TABLE文を抽出し、カラム名、SQL型、NOT NULLからのnull可否、デフォルト値を識別します。制約(PRIMARY、FOREIGN、UNIQUE、CHECK、INDEX)はスキップされます。複合型と生成カラムは部分的に解析される場合があります。括弧内の複数行カラム定義は行ごとに処理されます。カラム定義後のインラインコメントは解析前に除去されます。CHECK制約とGENERATED ALWAYS ASカラムは、エクスポート後に手動でTypeScript調整が必要です。 Regex parser skips CONSTRAINT lines と extracts column name type NOT NULL と DEFAULT per line. SERIAL と BIGSERIAL columns map to number type in generated TypeScript interface.
SQLからTypeScriptへの型マッピングは?
VARCHAR、CHAR、TEXTはstringにマップします。INT、BIGINT、SERIAL、NUMERIC、DECIMAL、FLOAT、DOUBLEはnumberにマップします。BOOLEANはbooleanにマップします。TIMESTAMP、DATEはstringにマップします。UUIDはstringにマップします。JSONとJSONBはRecord<string, unknown>にマップします。ENUM型は、エクスポート後に手動でマッピングを拡張しない限りstringにマップします。SMALLINTとTINYINTもデフォルト参照テーブルでnumberにマップします。 PostgreSQL IF NOT EXISTS と MySQL backtick quotes both supported in CREATE TABLE paste.
JSDocオプションは何をしますか?
デフォルトではnullableカラムにオプショナル(?)マーカーが付きます。JSDocを有効にすると、各フィールドの上にデフォルト値とrequired注釈の/**コメント*/が追加されます。JSDocはIDEのオートコンプリートがSQLスキーマを開かずにカラム制約を表示するのに役立ちます。データベースを維持しないフロントエンドチームと生成型を共有する際に有用です。デフォルトのない必須フィールドは、より厳格なコンパイル時チェックのため非オプショナルTypeScriptプロパティとして表示されます。TIMESTAMP WITH TIME ZONEカラムは引き続きstringにマップします。日付安全性のためbranded型を手動で追加してください。 BIGINT maps to number which loses precision above 2^53: use string branded types manually for snowflake IDs. JSDoc on optional columns documents NULL allowed from database constraint for frontend form validation.
どのCREATE TABLE構文がサポートされていますか?
パーサーは括弧、型注釈、NOT NULL、DEFAULT句を含む標準DDLで動作します。デフォルト内の複雑な式は文字列として抽出されます。PostgreSQL IF NOT EXISTSとMySQLバッククォート引用がサポートされます。ALTER TABLE、ビュー、ストアドプロシージャは解析しません。セミコロンで区切られた1つ以上のCREATE TABLEブロックを貼り付けてください。配列型とカスタムPostgreSQL型は、マッピングテーブルを手動で拡張しない限りstringがデフォルトです。SQLite CREATE TABLEエクスポートは動作しますが、インポート後に型親和性調整が必要な場合があります。 ALTER TABLE と VIEW statements ignored: paste only table definitions for interface generation.
複数のテーブルを一度に変換できますか?
各CREATE TABLEは、snake_caseからPascalCaseに変換されたテーブル名のTypeScriptインターフェースになります。複数のCREATE TABLE文は改行で区切られた複数のインターフェースを生成します。出力をtypesフォルダにコピーするか、.tsファイルとしてダウンロードし、NestJS、Prismaコンパニオン型、APIレイヤーにインポートします。エクスポート後、不変データベースビュー用にreadonly修飾子を手動で追加してください。複合主キーは生成後にインターフェースの手動分割が必要な場合があります。 Multiple CREATE TABLE statements produce multiple PascalCase interfaces in one download for ORM free projects. Download typescript file directly into monorepo packages types folder beside Prisma スキーマ.
SQL to TypeScript ジェネレーターはスマホで使えますか?
はい。SQL to TypeScript ジェネレーターはモダンなモバイルブラウザで動作します。入力の保存は端末内のみです。
SQL to TypeScript ジェネレーターのデータはどこに保存されますか?
サーバーには保存されません。計算はブラウザ内で完結します。
SQL to TypeScript ジェネレーターを税務や法務判断に使ってよいですか?
いいえ。SQL to TypeScript ジェネレーターは学習用の試算です。重要な決定前は専門家に相談してください。
関連ツール
API Mock Generatorは生成インターフェースに一致するサンプルJSONペイロードを作成します。Regex Transaction Parserは同じスキーマ上の金融アプリ向けCSVインポート形式の検証に役立ちます。Cron Market SchedulerはデータベーステーブルをTypeScript型付きAPIと同期するスケジュールETLジョブをサポートします。Enterprise Value Calculatorスキーマは財務諸表テーブルで類似のカラムパターンを共有することが多いです。DrizzleとKyselyユーザーは、推論スキーマ定義と並べてコンパニオン型として出力を貼り付けます。 YAML JSON Portfolio converter complements SQL first backends 時 config also lives in version control. JSON to OpenAPI documents HTTP layer while this tool types database layer for full stack finance apps.