1

次のCSVファイルの列構造を指定します。

First_Name, Last_Name, Date_Of_Birth

そして、次の構造を持つSQLServerテーブル

ID(PK) | First_Name | Last_Name | Date_Of_Birth

(フィールドIDは、自動インクリメントが1のIDです)

SQL ServerがcsvファイルのFirst_Name列をIDフィールドに挿入しようとしないようにするにはどうすればよいですか?

詳細については、csvをDataTableにロードしてから、SqlBulkCopyを使用してSQLServerにコピーします。

インポートする前にcsvファイルを変更してID列を追加する必要があります(インポート前に宛先テーブルが切り捨てられるため、キー値の重複について心配する必要はありません)。または、データテーブルにID列を追加することはできますか?

または、SQL Serverに見逃した可能性のある設定はありますか?

4

2 に答える 2

1

SqlBulkCopy.ColumnMappingsを使用します

http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlbulkcopycolumnmapping.aspx

于 2011-01-10T14:05:08.663 に答える
0

ID列をデータテーブルに追加する必要がありますが、そのフィールドにCSVのデータを入力する必要はありません。

これが完了すると、データは正常に整列するはずです。IDは自動インクリメントのIDであるため、CSVをDBにロードしても問題ありません。

于 2011-01-10T14:04:50.327 に答える