我尝试执行以下操作:
IF NOT EXISTS (select * from IT_IMAGES where IT_CODE='8717163044612')
BEGIN
INSERT INTO IT_IMAGES (LARGE_IMG,SMALL_IMG,IT_CODE,LAN_CODE) VALUES ('7290011051310.jpg','7290011051310.jpg','8717163044612','1')
END
但是我一直在收到ORA-00900:无效的SQL语句。你能帮我解决这个问题吗?
答案 0 :(得分:1)
以下内容对您有用:
INSERT INTO IT_IMAGES(LARGE_IMG, SMALL_IMG, IT_CODE, LAN_CODE)
SELECT '7290011051310.jpg', '7290011051310.jpg', '8717163044612', '1'
FROM dual
WHERE NOT EXISTS (SELECT 1 FROM IT_IMAGES WHERE IT_CODE = '8717163044612');
在我考虑这个问题时,我没有使用if
,除了Oracle中的begin
/ end
语句。您可能需要一个编程块来使用if
(MySQL确实需要这个)。不过上面应该解决这个问题。
Here是在SQL Fiddle中工作的一个例子。