我試圖是否存在其他SQL這將進一步在C#中的winform與MySQL使用寫,這裏是測試如何,如果存在其他在MySQL語句中使用
IF NOT EXISTS(SELECT 1 from products where entity_id=1) select * from products;
我adminer跑上面的SQL但有錯誤訊息, 第1行'select * from products'的語法錯誤
任何人都知道問題是什麼?
我試圖是否存在其他SQL這將進一步在C#中的winform與MySQL使用寫,這裏是測試如何,如果存在其他在MySQL語句中使用
IF NOT EXISTS(SELECT 1 from products where entity_id=1) select * from products;
我adminer跑上面的SQL但有錯誤訊息, 第1行'select * from products'的語法錯誤
任何人都知道問題是什麼?
首先,你應該創建列的唯一約束。
ALTER TABLE products ADD CONSTRAINT fk_products UNIQUE (column1, column2, etc..)
然後,只需插入數據:
INSERT INTO products (column1, column2, etc..) VALUES(value1, value2, etc..) ON DUPLICATE KEY UPDATE column1 = newValue, column2 = newValue2;
試試這個:
所有的DELIMITER $$
DROP PROCEDURE IF EXISTS `verifyExist` $$
CREATE PROCEDURE `verifyExist`()
BEGIN
IF NOT EXISTS(SELECT 1 from products where entity_id=1) THEN
select * from products;
END IF;
END$$
DELIMITER ;
應該怎樣查詢呢? – GurV
插入如果不存在其他更新 – hkguile
http://stackoverflow.com/questions/15383852/sql-if-exists-update-else-insert-into –