csv ファイルからの一括挿入中に、ファイル内の行に00000100008
値があり、ソース (csv ファイルの作成元) と宛先の両方temptable
に同じフィールド (char(11)) があります。
挿入しようとすると、次のエラーが発生しました。
Bulk load data conversion error (truncation) for row 1, column 1 (fieldname)
先頭の 0 を削除し、この値を100008
csv ファイルに変更してから一括挿入すると、宛先テーブルtemptable
は'++ 100008
挿入された値として表示されます。何故ですか?二重のプラス記号を先頭に付けずに値に対処するにはどうすればよいですか?
スクリプトは次のとおりです。
BULK
INSERT temptable
FROM 'c:\TestFile.csv'
WITH
(
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
)
GO
編集: csvファイルからのいくつかのサンプルレコード。
100008,111122223333,Mr,ForeName1,SurName1,1 Test Lane,London,NULL,NULL,NULL,wd25 123,test@email.com.com,NULL
322,910315715845,Ms,G,Dally,17 Elsie Street,NULL,NULL,GOOLE,NULL,DN146DU,test1@email1.com,
323,910517288401,Mrs,G,Tom,2 White Mead,NULL,NULL,YEOVIL,NULL,BA213RS,test3@tmail2.com,