gpt4 book ai didi

ibm-midrange - 为什么我在查询 as/400 服务器时得到 "A communication error occurred"?

转载 作者:行者123 更新时间:2023-12-04 04:17:10 24 4
gpt4 key购买 nike

我有一个网站查询 as/400 数据库以获取某些信息,包括有关已登录用户的一小部分信息。

因此,只要用户登录到新 session ,就会查询 as/400。

我收到有关发生通信错误服务器错误的零星报告,尤其是当人们在周末登录时。

如果您按 F5 键并刷新页面,错误就会清除,一切正常。

有人知道我为什么会收到此错误吗?

我在想,既然 f5 清除了错误,我就可以简单地重试任何因这个原因而失败的查询,但我不想在没有更深入地了解情况的情况下开始。

我浏览了 IBM 的用户文档并进行了大量的谷歌搜索,但没有得出任何结果。

编辑

使用 IBM.Data.DB2.iSeries windows 驱动程序 12 建立连接。

连接代码看起来像这样:

public DataSet RetrieveDataSet(string sql)
{
DataSet ds = new DataSet();
iDB2Connection con = new iDB2Connection();

iDB2DataAdapter da = null;
try
{
con.ConnectionString = ConnectionString;

con.Open();

da = new iDB2DataAdapter(sql, con);

da.Fill(ds);

}
catch (Exception ex)//yes i am aware this should not be catching the base exception
{
LogError("AS400Connection", "RetrieveAll", ex.Message, sql, ex.StackTrace, con.JobName.Trim());
throw;
}
finally
{
if (con.State == ConnectionState.Open)
con.Close();
if(da!=null)
da.Dispose();
con.Dispose();
ds.Dispose();
}

return ds;
}

da.Fill(...) 行抛出通信错误异常。

最佳答案

我最后只写了一小段代码,在每个关键部分之前尝试了一个小查询,所以如果作业结束,它只会终止该查询而不是整个应用程序。

编辑 -

“CheckConnectionOnOpen”连接字符串参数本质上做同样的事情,但作为驱动程序的一部分。

关于ibm-midrange - 为什么我在查询 as/400 服务器时得到 "A communication error occurred"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4069605/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com