c# SqlBulkCopy - 热获取原始 SQL 查询



我正在使用c#和SqlBulkCopy一次将一些记录插入我的数据库。记录列表很小,最多有 100-200 条记录。

这是我的代码:

 using (SqlBulkCopy bulkCopy = new SqlBulkCopy(connectionString))
            {
                bulkCopy.DestinationTableName = destinationTableName;
                bulkCopy.WriteToServer(reader);
            }

我不时出现超时异常,我想获取原始sql查询以进行更多调查。谁能告诉我如何从 SqlBulkCopy 对象中提取它?

尝试设置 BulkCopyTimeout 属性。我认为默认情况下使用您的连接超时。

我不认为你可以从 BulkCopy 中获取 SQL,因为我不这样做,它正在做常规的插入。您可以尝试运行 SQL 事件探查器。

如果要生成用于插入现有数据的 INSERT 语句(以便可以在其他数据库上运行它),则可以使用 Red Gate 中的 SQL 数据比较。我认为他们有一个免费版本可用。

最新更新