このエラーが発生しています
Bulk load data conversion error (truncation) for row 1, column 12 (is_download)
ここにcsvがあります... 1行しかありません
30,Bill,Worthy,sales,,709888499,[email protected],,"Im a a people person., to work together for this new emerging env.HTTP://applesoftware.com","Bill and Son of Co","Contact Us: Contact Form",0
これが私の一括挿入ステートメントです...
SE SalesLogix
GO
CREATE TABLE CSVTemp
(id INT,
firstname VARCHAR(255),
lastname VARCHAR(255),
department VARCHAR(255),
architecture VARCHAR(255),
phone VARCHAR(255),
email VARCHAR(255),
download VARCHAR(255),
comments VARCHAR(MAX),
company VARCHAR(255),
location VARCHAR(255),
is_download VARCHAR(255)
)
GO
BULK
INSERT CSVTemp
FROM 'c:\leads\leads.csv'
WITH
(
DATAFILETYPE = 'char',
BATCHSIZE = 50,
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
)
GO
--Check the content of the table.
SELECT *
FROM CSVTemp
GO
問題はほとんどの場合うまくいきますが、状況によっては(これがそれらの1つです)エラーが表示されます
このレコードでこのエラーが発生する原因についてのアイデア
区切り文字が一貫していないため、コメントフィールド内のコンマを区切り文字として選択しています。最善の解決策は、すべてのフィールドを二重引用符で囲み、FIELDTERMINATOR
を'","'
に設定することです。または、コメント内にありそうにないもの(~
など)にコンマを置き換えて、FIELDTERMINATOR = '~'
を設定します。
Wilのコメントに加えて、12列すべてが表示されているように見えるので、rowterminatorが正しくない可能性があります。まず、これらのファイルをまとめるプログラムが実際に最後の行の最後に改行を入れていることを確認してください。これが当てはまらない多くのプログラムを修正しなければなりませんでした。キャリッジリターンがあることを確認したら、それがどのタイプのキャリッジリターンであるかを確認するために実験する必要があります。場合によってはchar(10)のみ、場合によってはchar(13)のみであり、場合によっては両方を持っているが順序が間違っていることもあります。だから、試してみてください:
ROWTERMINATOR = '\n'
ROWTERMINATOR = '\r'
ROWTERMINATOR = '\n\r'
ROWTERMINATOR = '\r\n'
System.Data.SqlClient.SqlException(0x80131904):行97、列33の一括読み込みデータ変換エラー(切り捨て)
上記のエラーについては、確認できます