Oracle:UPDATE语句导致ORA-00933错误
有人能看出这句话有什么不对吗?我已经尝试了一段时间来修复它,但没有效果,我在网上找到的答案坚持认为我需要删除ORDERBY语句,这是我没有使用的Oracle:UPDATE语句导致ORA-00933错误,oracle,Oracle,有人能看出这句话有什么不对吗?我已经尝试了一段时间来修复它,但没有效果,我在网上找到的答案坚持认为我需要删除ORDERBY语句,这是我没有使用的 BEGIN UPDATE Tags SET MaskReasonId = v_MaskReasonId, AppliedTime = v_AppliedTime, ExpireTime = v_ExpireTime,
BEGIN
UPDATE Tags
SET MaskReasonId = v_MaskReasonId,
AppliedTime = v_AppliedTime,
ExpireTime = v_ExpireTime,
UserId = v_UserId,
ClientNode = v_ClientNode,
CommentId = v_CommentId
FROM Tags
WHERE Tag = v_sTag OR Tag = v_Tag;
END;
您必须从标记中删除
您必须从标记中删除
Oracle不支持update语句中的“from”构造,请尝试以下操作:
BEGIN
UPDATE Tags
SET MaskReasonId = v_MaskReasonId,
AppliedTime = v_AppliedTime,
ExpireTime = v_ExpireTime,
UserId = v_UserId,
ClientNode = v_ClientNode,
CommentId = v_CommentId
WHERE EXISTS (SELECT * FROM Tags WHERE Tag = v_sTag OR Tag = v_Tag);
END;
Oracle不支持update语句中的“FROM”构造,请尝试以下操作:
BEGIN
UPDATE Tags
SET MaskReasonId = v_MaskReasonId,
AppliedTime = v_AppliedTime,
ExpireTime = v_ExpireTime,
UserId = v_UserId,
ClientNode = v_ClientNode,
CommentId = v_CommentId
WHERE EXISTS (SELECT * FROM Tags WHERE Tag = v_sTag OR Tag = v_Tag);
END;
Oracle不支持UPDATE FROM语句,但支持UPDATE SELECT。试试这个。对于此查询,Nodes.NodeID必须是Nodes表中的主键。我猜v_MaskReasonId,。。。是来自节点(?)的字段:
Oracle不支持UPDATE FROM语句,但支持UPDATE SELECT。试试这个。对于此查询,Nodes.NodeID必须是Nodes表中的主键。我猜v_MaskReasonId,。。。是来自节点(?)的字段:
你不能在更新语句中使用
join
。为@Ben的快速响应干杯。我已删除了内部联接
,但仍会出现错误。在删除联接之后,您是否也更新了where子句?是的,我现在正在检查WHERE Node=v_Node代码>编辑:刚刚意识到我不再把那个表加入这个表了。我已切换到Tag where子句,但oracle仍然不支持joyFrom标记。您不能在更新语句中使用join
。为@Ben的快速响应干杯。我已删除了内部联接
,但仍会出现错误。在删除联接之后,您是否也更新了where子句?是的,我现在正在检查WHERE Node=v_Node代码>编辑:刚刚意识到我不再把那个表加入这个表了。我已经切换到tagwhere子句,但oracle仍然不支持joyFrom标记。