我正在尝试根据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"],
];
为什么会说它不兼容?
答案 0 :(得分:0)
您尝试通过直接放置值而不是通过参数来尝试它,看看它是否有效。
您可以尝试的另一件事是删除可能不需要的第一个铸件。正如您所说,QUANTITY已经是INT数据类型。
请尝试两种变化。如果两个版本均给出相同的错误,则可能存在某些产品限制/错误。
您需要传递您尝试进一步查看的DB2版本。