我有一个视图,它生成许多列,我想将它们批量加载到另一个具有相同名称列的表中。
当我循环遍历 SqlDataReader 并每次使用 SqlCommand 使用 SqlParameters 进行插入时,此过程运行良好。显然,对于许多 100000 行来说,这太慢了。
我切换到使用 SqlBulkCopy,因为视图列名和目标数据库表的列名和类型匹配(因为上述过程有效!),这似乎可行。
但是,在第一条记录上,它失败并出现 InvalidOperationException 说“String 类型的给定值无法转换为指定目标列的 smalldatetime 类型”。第一行中只有一个日期列,其值为 NULL。
该视图仅返回列的子集,但不是所有列的子集都可以为空。
任何帮助,将不胜感激。