前提・実現したいこと
SQL Serverで、CSVファイルをBULK INSERTしたいのですが、下記のようなエラーがでます。
「行 1、列 4 の一括読み込みデータ変換エラー (型の不一致または指定されたコードページでは無効な文字)。」
改行コードが原因と思われますが、指定はちゃんとしてあり、文字コードも問題なさそうですが、何が原因なのでしょうか?
【csv内容】
(1~3列目 省略させていただきます)
(4列目)150101
(5列目)改行コード
カンマ区切り(4列目の5列目の間はなし)
クォーテーションやTABなどはなし
【テーブルの型】
すべてnvarchar
発生している問題・エラーメッセージ
「行 1、列 4 の一括読み込みデータ変換エラー (型の不一致または指定されたコードページでは無効な文字)。」
該当のソースコード
SQL
1BULK INSERT 2 [bulkInsertTest].[dbo].[Sales] 3FROM 4 'D:\bulkInsertTest\csvData.csv' 5WITH( 6 DATAFILETYPE = 'char' 7 ,FIELDTERMINATOR = ',' 8 ,ROWTERMINATOR = '\n' 9)
試したこと
ROWTERMINATOR = '\n'
上記の「\n」を「\r」「\r\n」に変えてみましたが同じエラーでした。
また、SQL Server2017以降のため、
with句を「FORMAT = 'CSV'」に変えてやりましたが、今回のエラーが原因でエラーが出てしまうようです。
エラーメッセージ
「行 1、列 4 のCSVデータファイル (ファイル名)の列名が無効であるため、一括読み込みが失敗しました。…(略)」
補足情報(FW/ツールのバージョンなど)
SQL Server2019
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/11/25 01:01
2021/11/25 03:23 編集
2021/11/27 15:02 編集
2021/11/27 15:29
2021/11/29 14:17