为什么我的SQL失败了?(ORA-00933:SQL命令未正确结束)
为什么我的SQL失败了?我想它的格式是正确的,但它给我带来了一个错误为什么我的SQL失败了?(ORA-00933:SQL命令未正确结束),sql,oracle,oracle10g,Sql,Oracle,Oracle10g,为什么我的SQL失败了?我想它的格式是正确的,但它给我带来了一个错误 INSERT INTO NBOT_USERS (ID,LAST_NAME,FIRST_NAME) VALUES (1002, 'Smith', 'John') WHERE 1002 NOT IN (SELECT IT_ID FROM NBOT_USERS); Insert查询没有where子句,除非您正在执行Insert。。。从中选择,在这种情况下,选择部分中可能有wher
INSERT INTO NBOT_USERS
(ID,LAST_NAME,FIRST_NAME)
VALUES
(1002, 'Smith', 'John')
WHERE 1002 NOT IN (SELECT IT_ID FROM NBOT_USERS);
Insert查询没有where子句,除非您正在执行
Insert。。。从
中选择,在这种情况下,选择部分中可能有where子句。插入查询没有where子句,除非您正在执行插入。。。从中选择,在这种情况下,SELECT部分中可能有where子句。
使用您的模式:
INSERT INTO NBOT_USERS (ID,LAST_NAME,FIRST_NAME)
Select 1002, 'Smith', 'John'
From dual
WHERE 1002 NOT IN (SELECT FROM NBOT_USERS);
使用您的模式:
INSERT INTO NBOT_USERS (ID,LAST_NAME,FIRST_NAME)
Select 1002, 'Smith', 'John'
From dual
WHERE 1002 NOT IN (SELECT FROM NBOT_USERS);
那么我怎样才能做一个有条件的测试呢?例如…仅允许在表中尚不存在ID时插入?(这不是PK,PK实际上是一个序列号,因此此处不显示)选择以查看ID是否存在,如果不存在则插入。您还必须应用一些锁,以防止任何并行进程从您下面盗取ID。我不确定其语法是什么,请您提供一个简短的示例,那么我如何才能执行条件验证?例如…仅允许在表中尚不存在ID时插入?(这不是PK,PK实际上是一个序列号,因此此处不显示)选择以查看ID是否存在,如果不存在则插入。您还必须应用一些锁,以防止任何并行进程从您下面窃取ID。我不确定这将是什么语法,请您提供一个简短的示例?