SqlBuldCopyクラスを使用して、型指定されたデータセットからMSSQLデータベースにデータを挿入します。
foreach (DataTable dt in ds.Tables)
{
using (SqlBulkCopy bulkCopy = new SqlBulkCopy(conn))
{
bulkCopy.DestinationTableName = "dbo." + dt.TableName + "_neu";
try
{
bulkCopy.WriteToServer(dt);
}
catch (Exception ex)
{
throw new FaultException("\n" + dt.TableName + ": " + ex.Message);
}
}
}
それは素晴らしい働きをします。しかし、データベースにDataTime.MinValueを挿入すると、次のエラーが発生します:SqlDateTimeオーバーフロー。1/1/175312:00:00AMから12/31/999911:59:59PMの間にある必要があります。foreachで次のように言う方法はありますか:データセットのDateTimeフィールド値がDateTime.MinValueの場合、データセットのDateTimeフィールドをデータベースに挿入しないでください。
よろしくお願いします