C# 在oracle数据库中为web应用程序设置查询超时值
当我在VisualStudio2003中处理一个新的web应用程序项目时,我的应用程序有正在执行的查询。此应用程序连接到Oracle类型的数据库 现在,我想做的是将这个应用程序中所有查询的查询超时值设置为非常大的值,或者无穷大,这样当执行一个查询失败时,它不会直接重新执行它,因为如果它多次执行它,并且一直执行它,DB重载 我们注意到大约有60个会话被打开并同时执行这个查询,如果它无法执行的话 现在,我的问题是:C# 在oracle数据库中为web应用程序设置查询超时值,c#,sql,oracle,web,timeout,C#,Sql,Oracle,Web,Timeout,当我在VisualStudio2003中处理一个新的web应用程序项目时,我的应用程序有正在执行的查询。此应用程序连接到Oracle类型的数据库 现在,我想做的是将这个应用程序中所有查询的查询超时值设置为非常大的值,或者无穷大,这样当执行一个查询失败时,它不会直接重新执行它,因为如果它多次执行它,并且一直执行它,DB重载 我们注意到大约有60个会话被打开并同时执行这个查询,如果它无法执行的话 现在,我的问题是: 因为我是oracle的新手,在哪里可以找到查询超时变量并将其更改为非常大的值?如果我
我搜索使用OracleCommand类中的CommandTimeout属性,但没有找到它。
是否有其他方法使用此属性设置超时 在Oracle数据库中,没有默认的查询超时值,但我们可以使用资源管理器来执行此操作,在资源管理器中,当估计查询花费的时间超过X时,可以取消查询。最好使用它来保护数据库服务器不受无人等待的恶意查询的影响。这与将超时设置为无限制相反,最终确保正确的应用程序部件不会受到坏部件的阻碍 请看,您确实希望保护您的用户不受性能差的应用程序的影响
最有可能的是,web层出现较早的超时。对于第一个问题,mb:谢谢!是的,我查看了这个链接,但是JAVA支持这个方法(setQueryTimeout),我在C#(CommandTimeout)中发现了类似的属性。实际上奇怪的是,我不能一直在c#中调用这个属性!有时候从OracleCommand类中看不到这个属性谢谢你,我会考虑这个解决方案。