ホームページ >データベース >mysql チュートリアル >CSV ファイルを SQL Server に効率的にインポートし、カンマ、二重引用符、不正なデータを処理するにはどうすればよいですか?
このガイドでは、BULK INSERT
コマンドを使用して CSV ファイルを SQL Server にインポートするときに遭遇する一般的な障害について説明します。 3 つの主要な問題とその効果的な解決策を検討します。
課題 1: データ フィールド内にカンマを埋め込む
CSV データにはフィールド内にカンマが含まれることが多く (例: "John Doe, Jr.")、BULK INSERT
はフィールド区切り文字として解釈します。 解決策は、BULK INSERT
ステートメント内に「||」などの代替フィールド区切り文字を指定することです。
<code class="language-sql">BULK INSERT SchoolsTemp FROM 'C:\CSVData\Schools.csv' WITH ( FIELDTERMINATOR = '||' )</code>
課題 2: Excel エクスポートからの二重引用符の処理
Excel からエクスポートされた CSV ファイルでは、カンマを含むフィールドをカプセル化するために二重引用符が頻繁に使用されます。 BULK INSERT
は本質的にこれをサポートしていません。インポート後の UPDATE
ステートメントは、次の引用符を効率的に削除します。
<code class="language-sql">UPDATE table SET column_with_quotes = REPLACE(column_with_quotes, '"', '')</code>
課題 3: 無効なデータの特定と管理
インポートに失敗した問題のあるデータを含む行を特定するには、ERRORFILE
オプションを使用します。これにより、BULK INSERT
がこれらの行の詳細を別のエラー ファイルに書き込むように指示されます:
<code class="language-sql">BULK INSERT SchoolsTemp FROM 'C:\CSVData\Schools.csv' WITH ( ERRORFILE = 'C:\CSVData\SchoolsErrorRows.csv' )</code>
これらの手法を実装することで、SQL Server への CSV インポート プロセスを合理化し、潜在的なデータの不整合を効果的に管理できます。
以上がCSV ファイルを SQL Server に効率的にインポートし、カンマ、二重引用符、不正なデータを処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。