DB2DataAdapter.Fill(dataset) 抛出错误“SQL0901N(原因“CPF4273”。)SQLSTATE=58004”

Posted

技术标签:

【中文标题】DB2DataAdapter.Fill(dataset) 抛出错误“SQL0901N(原因“CPF4273”。)SQLSTATE=58004”【英文标题】:DB2DataAdapter.Fill(dataset) throws error "SQL0901N (Reason "CPF4273".) SQLSTATE=58004" 【发布时间】:2011-10-14 11:48:27 【问题描述】:

我的应用程序是基于 Dot Net 的。我正在使用 VS 我的应用程序在其后端使用 IBm DB2。 我的查询是

SELECT A, B FROM SERVER.D WHERE A IN 
    (SELECT C FROM SERVER.E WHERE X = '01OBPP' AND Y= 'U' AND Z= '1')

A、B、C、X、Y、Z-列名、服务器-服务器名、D 和 E-表名

PFB 代码-

DB2DataAdapter dbAdapter = null;
DB2Connection dbConn = null;
DB2Command dbCommand;
DataSet dsReturnDataSet  ;              
dbConn = new DB2Connection(connectionString);
if (dbConn.State == ConnectionState.Closed) dbConn.Open();
dsReturnDataSet.Clear();

dbCommand = GetCommand();
dbCommand.CommandText = queryString;
dbCommand.Connection = dbConn;
dbAdapter = new DB2DataAdapter((DB2Command)dbCommand);
dbAdapter.Fill(dsReturnDataSet);
return dsReturnDataSet;

GetCommand() 方法有如下语句

DB2Command dbCommand; 
dbCommand = null;
dbCommand = new DB2Command();
dbCommand.CommandType = CommandType.Text;
dbCommand.CommandTimeout = 30;
return dbCommand;

当它到达“dbAdapter.Fill(dsReturnDataSet);”行时它卡在那里很长时间,然后抛出错误

"ERROR [58004] [IBM][AS] SQL0901N SQL 语句失败,因为 非严重的系统错误。可以处理后续的 SQL 语句。 (原因“CPF4273”。)SQLSTATE=58004"

请提供一些指示。 如果有人能提供一些关于如何解决此错误的指示,我将不胜感激。

【问题讨论】:

【参考方案1】:

检查您的数据库日志。实例的sqllib 目录下的db2dump 目录中应该有一个db2diag.log 文件。在此文件中搜索上述错误,它应该包含它所指的根本原因(非严重系统错误)。

【讨论】:

您好 inflagranti,感谢您的更新。我找到了 SQLLIB,但找不到 db2diag.log。我做了一些冲浪,发现我的 DIAGPATH 是空的,diaglevel 是 3。关于我应该在哪里查看或应该将 diagpath 更改到某个本地位置并重新运行查询以在 db2diag.log 中记录缺陷的任何指针// @Ayoti:您可能必须重新启动 DB2 服务才能使该更改生效。我不会将 diaglevel 设置为 3 以上,因为它只会填满您的日志。查看文档 (publib.boulder.ibm.com/infocenter/db2luw/v9r5/…) 了解更多信息。 因为(Reason "CPF4273".),看来这是一个远程DB2 for i 数据库。因此,将没有“db2diag.log”、任何“db2dump 目录”或任何“实例的 sqllib 目录”。 “CPF4273”是发生错误的一般指示,应检查作业日志以查看所有以前记录的消息。

以上是关于DB2DataAdapter.Fill(dataset) 抛出错误“SQL0901N(原因“CPF4273”。)SQLSTATE=58004”的主要内容,如果未能解决你的问题,请参考以下文章

安卓 /data/data/mypackage/img

Mysql QUERY我如何按顺序查询包含的字符串

Bash - 每对夫妇的参数

Keil 中的Code, RO-data , RW-data, ZI-data

js自定data-*和jquery的data()用法

sqlServer可重复执行脚本(data)?