BULK INSERT を使用して CSV ファイルを SQL Server にインポートします
BULK INSERT を使用して CSV ファイルを SQL Server にインポートするのは一般的な操作ですが、予期しない問題が発生する可能性があります。この記事では、これらの問題を解決する方法について詳しく説明します:
1. CSV データのカンマの処理
フィールド値のカンマを処理するには、別のフィールド区切り文字を使用します。例:
<code class="language-sql">BULK INSERT SchoolsTemp FROM 'C:\CSVData\Schools.csv' WITH ( FIRSTROW = 2, FIELDTERMINATOR = '||', -- 将分隔符更改为 '||' (管道符) ROWTERMINATOR = '\n', TABLOCK )</code>
2. Excel での二重引用符の処理
残念ながら、BULK INSERT はデータを含む二重引用符を処理できません。データをインポートした後、SQL ステートメントを使用して引用符を削除します:
<code class="language-sql">UPDATE SchoolsTemp SET Description = REPLACE(Description, '"', '')</code>
3. トラッキングエラーデータ
インポートプロセス中にスキップされた無効なデータ行を追跡するには、ERRORFILE 属性を使用します:
<code class="language-sql">BULK INSERT SchoolsTemp FROM 'C:\CSVData\Schools.csv' WITH ( FIRSTROW = 2, FIELDTERMINATOR = '||', ROWTERMINATOR = '\n', ERRORFILE = 'C:\CSVData\SchoolsErrorRows.csv', TABLOCK )</code>
エラーを含む行は、指定されたエラー ファイルに書き込まれます。
以上がBULK INSERT を使用して CSV ファイルを SQL Server に効率的にインポートし、一般的な問題に対処する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。