我正在嘗試創建更強大的MySQL
查詢和學習過程中。目前我很難掌握ON DUPLICATE KEY
的語法和可能的用法。有條件的mySQL語句。如果是真的更新,如果是假INSERT
我有一個INSERT
查詢,我想INSERT
只有當沒有記錄與ID
和名稱相同,否則UPDATE
。 ID
和名稱不是UNIQUE
,但ID
已編入索引。 ID
不是UNIQUE
,因爲它引用另一個表中的另一條記錄,並且我想在此表中引用另一個表中的一條特定記錄的多條記錄。
如何才能使用ON DUPLICATE KEY
到INSERT
只有當沒有記錄與該ID
和名稱已設置其他UPDATE
該記錄?
我可以很容易地與一對夫婦的QUERIES
實現這一點,然後有PHP
做IF
ELSE
一部分,但我想知道如何LIMIT
的QUERIES
我發送到MySQL
量。
獲取此錯誤:您的SQL語法有錯誤;檢查與您的MySQL服務器版本對應的手冊,以便在第1行的IF(SELECT * FROM flavours WHERE id ='1'和Name ='BerryBlue')IS NULL THEN'附近使用正確的語法 –
@Vitaliy - I'我更新了我的代碼。看看能否幫助你。如果不是,請嘗試將INSERT語句放在與IF語句相同的行上。 – 2011-02-09 01:38:44
已經試過了。也扭轉了邏輯,仍然給我一個語法錯誤。我甚至用沒有運氣的靜態值替換了所有的PHP變量。 –