在程式碼中,您的目標是更新set_colors 表中的行如果它們已經存在。否則,插入新行。但是,您在查詢中使用 IF EXISTS 條件,這與處理此類情況的首選方式不符。
根據需要執行所需的更新或插入操作在現場存在時,考慮使用INSERT ... ON DUPLICATE KEY UPDATE 語法:
INSERT INTO <table name> (field1, field2, field3, ...) VALUES ('value1', 'value2', 'value3', ...) ON DUPLICATE KEY UPDATE field1='value1', field2='value2', field3='value3', ...
使用此語法:
以下查詢示範了用法:
INSERT INTO set_colors (school_art_id, baseimage_id, sub_folder, layer) VALUES ('1', '2', 'test-folder', '10') ON DUPLICATE KEY UPDATE baseimage_id='2', sub_folder='updated-folder', layer='15'
以上是如何根據欄位存在情況更新或插入 MySQL 中的行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!