6
我在下面尝试这2个调用,但它们都返回给我一个异常Customer_ID不允许DBNull.Value。但是当我调试时,我发现我的所有记录都分配了Customer_ID。这是唯一一个在我的数据库表中不可空的定义。什么导致了这个错误?sqlbulkcopy - 不允许DBNull.Value。?
bulkCopy.WriteToServer(myBookingDataTable)
bulkCopy.WriteToServer(myBookingss.ToArray())
这是我的整个代码。
Using myConnection As SqlConnection = _
New SqlConnection(connectionString)
myConnection.Open()
Using bulkCopy As SqlBulkCopy = _
New SqlBulkCopy(My.Settings.ConnectionString(), SqlBulkCopyOptions.Default)
bulkCopy.DestinationTableName = "dbo.Booking"
Try
' Write from the source to the destination.
bulkCopy.WriteToServer(myBookingDataTable)
'bulkCopy.WriteToServer(myBookingss.ToArray())
Catch ex As Exception
Console.WriteLine(ex.Message)
Finally
bulkCopy.Close()
End Try
End Using
是字段的顺序是源和目标是否一致? – Pleun
@Pleun:非常感谢你的帮助。这确实是问题。我正在使用dataset.xsd项目来定义datatable,虽然我添加了一个新的,它不知道如何,因为它应该是。但是为什么sqlbulkcopy非常敏感呢?你能否回答我也接受你的评论作为正确答案。再次感谢。 – batmaci