[英]Value not compatible when doing merge in DB2
我正在尝试根据来自 php 脚本中先前选择的参数执行合并,但出现错误“SQL0408 - 列、变量或参数 QUANTITY 的值不兼容”
在我的目标表中 QUANTITY 是数据类型 INTEGER
在我的选择查询中,我将值转换为 int(它已经在表中,我只是将所有内容转换为安全)
cast(MAX(orqtyc) as int) AS QUANTITY,
然后在我的 MERGE 中,我将转换为 INT
MERGE INTO HNORMANTEST.PLACEMENTS AS P
USING(VALUES(
CAST(:QUANTITY as INT),
))
使用这个参数
$params = [
":QUANTITY" => $row["QUANTITY"],
];
为什么会说不兼容?
你有没有通过直接输入值而不是通过参数来尝试它,看看它是否有效。
您可以尝试的另一件事是删除可能不需要的第一个铸件。 正如您所说 QUANTITY 已经是 INT 数据类型。
请尝试两种变化。 如果两个变体都给出相同的错误,则可能存在一些产品限制/错误。
您需要传递您尝试进一步查看的 DB2 版本。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.