在代码中,您的目标是更新 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中文网其他相关文章!