Why am I getting quot;Data conversion or data mapping error. SQLCODE=-802quot; on a simple DB2 select statement?(为什么我会收到“数据转换或数据映射错误.SQLCODE=-802在一个简单的 DB2 选择语句上?)
问题描述
我正在使用 PHP 访问 IBM i (AS400) 上的 DB2 信息.
I am accessing DB2 information on an IBM i (AS400) with PHP.
使用此代码:
$query = "SELECT * FROM QS36F.MYTABLE WHERE MYFIELD=120006";
$result = db2_prepare($conn, $query);
db2_execute($result);
$i=0;
while($row = db2_fetch_assoc($result) or die(db2_stmt_errormsg())){
$i++;
print "Row " . $i . " successful<br />";
}
我明白了:
从 QS36F.MYTABLE 中选择 *,其中 MYFIELD=120006
SELECT * FROM QS36F.MYTABLE WHERE MYFIELD=120006
第 1 行成功
第2行成功
第3行成功
第4行成功
数据转换或数据映射错误.SQLCODE=-802
Row 1 successful
Row 2 successful
Row 3 successful
Row 4 successful
Data conversion or data mapping error. SQLCODE=-802
应该有超过 4 个结果.为什么会出现这个错误?
There should be more than 4 results. Why might this error be occurring?
更多细节:
- 我在 MYFIELD 中搜索的任何值似乎都会发生同样的错误,尽管它可能是在不同数量的成功结果之后
- MYFIELD 是 NUMERIC(7,0)
- 我可以搜索表格中的其他字段(包括数字字段)并且效果很好.
推荐答案
表格中有无效的十进制数据.有空白而不是零.我将零移到那些空白处,这解决了问题
There was invalid decimal data in the table. There were blanks instead of zeros. I moved zeros into those blanks and that fixed the problem
这篇关于为什么我会收到“数据转换或数据映射错误.SQLCODE=-802"在一个简单的 DB2 选择语句上?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:为什么我会收到“数据转换或数据映射错误.SQLCODE=-802"在一个简单的 DB2 选择语句上?
基础教程推荐
- 超薄框架REST服务两次获得输出 2022-01-01
- 在多维数组中查找最大值 2021-01-01
- 在 PHP 中强制下载文件 - 在 Joomla 框架内 2022-01-01
- 通过 PHP SoapClient 请求发送原始 XML 2021-01-01
- Libpuzzle 索引数百万张图片? 2022-01-01
- 如何在 PHP 中的请求之间持久化对象 2022-01-01
- XAMPP 服务器不加载 CSS 文件 2022-01-01
- mysqli_insert_id 是否有可能在高流量应用程序中返回 2021-01-01
- 在 Woocommerce 中根据运输方式和付款方式添加费用 2021-01-01
- WooCommerce 中选定产品类别的自定义产品价格后缀 2021-01-01