【发布时间】:2021-11-23 09:45:22
【问题描述】:
我正在使用 apex oracle 并在这个简单的更新语句中遇到 缺少等号 错误。有人可以指出这个查询有什么问题吗?
update product_t set qty-onhand = 11000 where productid = 28
【问题讨论】:
标签: sql oracle oracle-apex
我正在使用 apex oracle 并在这个简单的更新语句中遇到 缺少等号 错误。有人可以指出这个查询有什么问题吗?
update product_t set qty-onhand = 11000 where productid = 28
【问题讨论】:
标签: sql oracle oracle-apex
qty-onhand 是 column qty 减号 column onhand。
您需要“转义”列名(或者只使用更好的列名,其中不带减号)。
update product_t
set "qty-onhand" = 11000
where productid = 28
【讨论】:
qty-onhand 的解析方式与 qty - onhand 完全相同。如果你有SET x = y-z,你会期望得到y minus z 或the column "y-z"?这就是为什么列名通常应该是字母数字和_,否则会导致问题和错误。
SET "qty-onhand" = 代替你的SET qty-onhand =);告诉解析器它不是算术表达式,它是一个带有连字符的列名。