我正在使用Oracle SQL Developer 4.0.0.13。无法使用UPDATE语句中的绑定变量更新行
查询:
UPDATE employes
SET emptime = systimestamp
WHERE emp_id = 123
AND emp_device = :abc;
字段定义:emp_device char(20 byte)
值为:99998000000008880999(此值是出现在表)
当我运行在SQL开发上面的查询就问我给出绑定变量的值,我将其粘贴到文本框中,并返回更新的0行。
但是,当我删除更新查询中的绑定变量并指定实际值时,它会更新列值。以下是查询。
查询:
UPDATE employes
SET emptime = systimestamp
WHERE emp_id = 123
AND emp_device = 99998000000008880999 ;
---(作品)
此外,当我在绑定变量文本框中添加一些尾随空格和修剪emp_device列,它更新列。以下是查询。
查询:
UPDATE employes
SET emptime = systimestamp
WHERE emp_id = 123
AND emp_device = trim(:abc);
- (作品---:ABC值是 '99998000000008880999')
我不知道什么是错的。有人可以看看并提出解决方案。
':abc'的类型是什么? –
我没有定义任何名为的变量:abc和SQL Developer没有要求我......假设为SQLPlus ..我在SQL Developer中尝试过这种方法,但仍然没有工作。 ------>变量abc char(21); exec:abc:= 89148001700748180966; –