c# - SqlCommand 对象 - 设置它并忘记它?

标签 c# sqlcommand

我正在使用 SqlClient.SqlCommand 对象在我的数据库上运行一些存储过程。通常,当我通过查询分析器手动运行这些时,它们最多需要 15 分钟才能完成。

很明显,当我使用 SqlCommand 对象运行它们时,我得到了 SqlCommand 超时。

我知道我可以将超时属性设置为非常高的数字,但我想知道是否有其他方法可以启动过程并断开连接。我不需要返回值。

有什么建议吗?我对优化这里每个 sp 的处理时间不感兴趣,只是想确定是否有“设置它并忘记它”选项。

这是 SqlCommand 对象的内容:

using (SqlCommand cmd = new SqlCommand(@"update tbl_SYS_DATE set RPT_DATE = @inputDate
                                                    exec sp_Get_Bp_Data1
                                                    exec sp_Get_Bp_Data2          
                                                    exec sp_Get_Bp_Data3
                                                    exec sp_channel_data1
                                                    exec sp_channel_data2
                                                    exec sp_channel_data3
                                                    ", con))

最佳答案

您可以使用异步方法,例如 BeginExecuteNonQuery。超时被忽略。

关于c# - SqlCommand 对象 - 设置它并忘记它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1644360/

相关文章:

c# - WPF:ControlTemplate 的 IsPressed 触发器不起作用

c# - 如何将表值参数从 .net 代码传递给存储过程

c# - 在 PowerPoint 中的文本框中查找动画的开始/结束字符索引

c# - Reactive Extensions : Split input, 进程,并连接回来

c# - 交换类实例数组中的值

c# - list<list<int>> 使用 list[][] C# 赋值

mysql - 从中的列中选择最频繁的

.net - System.Data.SQLCommand 中的 Unicode 会发生什么

vb.net - SqlCommand(使用语句/处置问题)

c# - SqlException 发生在 System.Data.dll 中,但未在用户代码中处理