ホームページ >データベース >mysql チュートリアル >MySQL データが存在する場合は更新し、存在しない場合は挿入するにはどうすればよいですか?
特定のフィールドが存在する場合は MySQL テーブルを更新し、存在しない場合は挿入しようとします。このシナリオには、set_colors、school_art、baseimage の 3 つのテーブルを結合することが含まれます。
目的の結果を達成するには、次のコードを検討してください。
public function set_layer_colors($value) { global $db; $result_array = mysql_query(" INSERT INTO set_colors (school_art_id, baseimage_id, sub_folder, layer) SELECT school_art.id, baseimage.id, baseimage.sub_folder, baseimage.layer FROM school_art JOIN baseimage ON baseimage.base_folder = school_art.series_code WHERE baseimage.image_type = 'B' ON DUPLICATE KEY UPDATE sub_folder = VALUES(sub_folder), layer = VALUES(layer); "); return $result_array; }
この更新されたコードでは、INSERT ... ON が使用されています。 MySQL の DUPLICATE KEY UPDATE ステートメント。次のアクションを実行します:
以上がMySQL データが存在する場合は更新し、存在しない場合は挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。