ユーザーが任意の数の興味を入力できるデータベースがあります。彼らがそれを更新しようとすると、以前の興味の1つを削除できます。
これはどのように処理する必要がありますか?更新により、データベースから以前の関心をすべて削除してから、更新された関心を挿入する必要がありますか?
ユーザーが任意の数の興味を入力できるデータベースがあります。彼らがそれを更新しようとすると、以前の興味の1つを削除できます。
これはどのように処理する必要がありますか?更新により、データベースから以前の関心をすべて削除してから、更新された関心を挿入する必要がありますか?
That's what I usually do: Delete all the existing records and add the new ones. It's the simplest thing to do if it's a simple cross reference table. If there are id fields that are important you might have to do something else.
関心のあるプールが別のテーブルに保存されていない場合は、フラグ アプローチを使用できます。
ユーザー テーブル (例)
user_id int(8) AUTO_INCREMENT
user_name varchar(255)
user_email varchar(255)
ユーザー インタレスト テーブル (例)
interest_name varchar(255)
user_id int(8)
interest_status tinyint(1)
関心ステータスは、1 (アクティブな関心) または 0 (以前の関心) のいずれかです。
反対に、選択対象のプールとバイナリ関連テーブルがある場合は、interest_name
をinterst_id
それが表す に変更します。古いレコードをすべて削除し、問題フラグを付けて再挿入します。これは通常、実行するのが簡単で、エラーが発生しにくい方法です。