2016-12-23 20 views
0

.csvファイルを既存のテーブルに挿入しようとしています。既存のテーブルには3つの列があり、ID(テーブルに割り当てられている)、学生番号、およびグループ番号です。私.csvSQL Serverでバルク挿入のロードに失敗しました

は、私は以下の形式を持っていますが、私はそれを挿入するたびに、私は、バルク・ロードに失敗したエラー

を取得します。データファイル行、列1の予期しないNULL値。宛先列(ID)はNOT Nullとして定義されています。

最初の列を無視するにはどうすればよいですか?

これは.CSVファイルです:

ID,StudentNumber,GroupNumber 
    ,000,3 
    ,0000794613,3 

私は

BULK INSERT [dbo].[Table_StudentNumber] 
    FROM 'E:\CSV\sample.csv' 
    WITH 
    (
     FIRSTROW = 2, 
     FIELDTERMINATOR = ',', 
     ROWTERMINATOR = '\n' 
    ); 
+1

これにフォーマットファイルを使用してください。 https://msdn.microsoft.com/en-us/library/ms178129.aspx –

+0

こんにちは。あなたはbcpに言及していますか? – cat4081

+1

'BULK INSERT 'でフォーマットファイルを使用することもできます。 –

答えて

3

を使用しているSQL大半は実際のテーブルにあなたのCSVを挿入しないでください。 ID列のない表に最初に挿入し、データを変更してから実表に挿入します。

+0

こんにちは。あなたはテーブルのID列を参照していますか?かなりのIDは、テーブルで利用可能な次の番号に基づいています。 – cat4081

+0

参照:http://stackoverflow.com/a/12395673 –

関連する問題