CSV SQL 変換ツール
CSVデータをSQLのCREATE TABLE文とINSERT文に即座に変換
設定オプション
CSV to SQLジェネレータードキュメント
このツールとは?
このツールは、CSV(カンマ区切り値)データをCREATE TABLE(DDL)とINSERT文を含むSQL文に変換します。CSV データから列のデータ型を自動的に推測し、複数のデータベースシステム用にデータベース固有のSQL構文を生成します。
主な機能
- 複数のデータベースシステムに対応(MySQL、PostgreSQL、SQL Server、SQLite、Oracle)
- CSV値からデータ型を自動推測
- テーブル名と区切り文字のカスタマイズ可能
- DROP TABLE文の生成をオプションで選択可能
- CSVヘッダー行から列名を検出
一般的な使用例
- スプレッドシートからデータベースへのデータ移行
- エクスポートされたCSVファイルからデータベーステーブルを作成
- テストデータINSERT文の生成
- レガシーデータをSQL形式に変換
対応データベース
- MySQL - 人気のオープンソースリレーショナルデータベース
- PostgreSQL - エンタープライズ機能を備えた高度なオープンソースデータベース
- SQL Server - マイクロソフトのエンタープライズデータベースソリューション
- SQLite - 軽量な組み込みデータベース
- Oracle - エンタープライズグレードの商用データベース
ベストプラクティス
生成されたデータ型を確認する
自動検出された型は推測です。VARCHAR の長さを確認・調整し、適切な数値型(INT と BIGINT)を使用し、財務データには FLOAT ではなく DECIMAL の使用を検討してください。
制約を手動で追加する
ジェネレーターは基本的なテーブルを作成します。データ要件と関係に基づいて、PRIMARY KEY、FOREIGN KEY、UNIQUE、NOT NULL、CHECK 制約を追加してください。
頻繁にクエリされる列にインデックスを付ける
テーブル作成後、WHERE 句、JOIN、ORDER BY で使用される列にインデックスを追加します。ただし、過度なインデックスは INSERT 操作を遅くするため避けてください。
まずサンプルデータでテストする
最初に CSV のサブセットで SQL を生成します。完全なデータセットを処理する前に、テーブル構造とデータ型が正しく機能することを確認してください。
NULL 値を適切に処理する
空の CSV フィールドは、コンテキストに応じて NULL または空文字列になります。テーブル設計で明示的な NULL 処理を定義し、生成された SQL を適宜調整してください。
大量挿入にはトランザクションを使用する
一括 INSERT 文をトランザクション(BEGIN/COMMIT)でラップします。これによりパフォーマンスが向上し、いずれかの挿入が失敗した場合にロールバックできます。