OracleDataAdapter.Fill()的超时

时间:2015-08-20 10:07:16

标签: c# .net database oracle fill

在我用C#编写的应用程序中,我使用OracleDataAdapter.Fill()从oracle数据库中获取数据。有没有办法设置执行此方法的超时,因为有时它会永远被卡住?

更新:而不是" System.Data.OracleClient;"我使用" Oracle.DataAccess.Client;"然后下面的代码很好用。

using Oracle.DataAcces.Client;
...
OracleDataAdapter yourAdapter = new OracleDataAdapter(strSQLString, connection);
yourAdapter.SelectCommand.CommandTimeout=120;
yourAdapter.fill(yourDataSet);

2 个答案:

答案 0 :(得分:1)

OracleDataAdapter(因为从DbDataAdapter基类派生的每个类)都有SelectCommand用于检索要插入目标DataSet的数据,这个SelectCommand有一个名为{的属性{1}}您可以设置为以秒为单位的时间来提高超时异常

See MSDN DbCommand.CommandTimeout

答案 1 :(得分:1)

试试这个

    OracleDataAdapter yourAdapter = new OracleDataAdapter(strSQLString, connection);
    yourAdapter.SelectCommand.CommandTimeout=120;
   yourAdapter.fill(yourDataSet);

检查link以了解有关commandtimeout的更多信息