gpt4 book ai didi

SQL 错误 : ORA-00933: SQL command not properly ended

转载 作者:行者123 更新时间:2023-12-03 10:38:27 25 4
gpt4 key购买 nike

我正在尝试使用联接更新 oracle SQL 开发人员中的记录。
以下是我的查询-

UPDATE system_info set field_value = 'NewValue' 
FROM system_users users
JOIN system_info info ON users.role_type = info.field_desc
where users.user_name = 'uname'

但是,当我尝试执行它时,出现以下错误-
Error report: SQL Error: ORA-00933: SQL command not properly ended 
00933. 00000 - "SQL command not properly ended"

我尝试删除 JOINS
UPDATE system_info info 
SET info.field_value = 'NewValue'
FROM system_users users
where users.user_name = 'uname' AND users.role_type = info.field_desc

但仍然有同样的错误
谁能告诉我错误原因和解决方案

最佳答案

Oracle 不允许在 UPDATE 语句中连接表。您需要使用相关的子选择重写您的语句

像这样的东西:

UPDATE system_info
SET field_value = 'NewValue'
WHERE field_desc IN (SELECT role_type
FROM system_users
WHERE user_name = 'uname')

有关 UPDATE 语句的(有效)语法的完整说明,请阅读手册:

http://docs.oracle.com/cd/E11882_01/server.112/e26088/statements_10008.htm#i2067715

关于SQL 错误 : ORA-00933: SQL command not properly ended,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8940471/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com