【发布时间】:2018-02-01 02:23:26
【问题描述】:
我正在运行此代码并收到此错误ORA-00933 SQL command not properly ended
您将如何编写此代码以使此错误不存在? member_addresses_to_remove 是CURSOR。
FOR curr_element IN member_addresses_to_remove
LOOP
INSERT INTO schema.tablename(ID,NAME, PHONE_NUMBER)
VALUES (curr_element.ID, curr_element.NAME,curr_element.PHONE_NUMBER)
WHERE NOT EXISTS (SELECT 1
FROM SCHEMA.OTHERTABLE OT
WHERE OT.ID = curr_element.ID);
END LOOP;
COMMIT;
【问题讨论】:
-
将 SELECT [your columns] 的 VALUES 从 dual .... 更改为应该可以工作
-
也许你只是忘了删除 INSERT 语句中的 WHERE 条件,
-
@JorgeCampos 我这样做了,现在它说 ORA-00907 缺少右括号。我有所有关闭的括号。这是你熟悉的东西吗?另外为什么从双重工作?它在那里做什么?
-
好吧,我认为您没有从列中删除括号?我不够清楚,我想说选择不带括号的列.... :)