0

一括コピーを使用して、Excel ファイルから SQL Server 2000 に行を挿入しようとしています。テーブルには「rowguid」フィールドがあり、そのデフォルト値は (newid()) に設定されており、null 値を除くことはできません。また、RowGUID は「はい」に設定されています。

私のコードでは、 rowguid の列マッピングを削除します。これが私のコードです。

if (dr.HasRows)
{
    using (SqlBulkCopy bulkCopy =
        new SqlBulkCopy(sqlConnectionString))
        {
           bulkCopy.DestinationTableName = "configtest";
           SqlBulkCopyColumnMapping value = new SqlBulkCopyColumnMapping("rowguid", "rowguid");
           bulkCopy.ColumnMappings.Remove(value);
           bulkCopy.WriteToServer(dr);
         }


 }

列 'rowguid は dbnull.value を許可していません

そのフィールドの定義は次のとおりです。

4

2 に答える 2

0

それ以外の

bulkCopy.ColumnMappings.Remove(value);

試す

bulkCopy.ColumnMappings.Add(value);
于 2013-08-20T07:25:52.890 に答える