MySQL に 2 つのテーブルがあるとします。
製品
id (unique)
name
購入
id (unique)
fk_productid (references Product.id)
buyerName
私は InnoDB を使用しており、 からpurchases.fk_productid
への外部キーを作成しましたproduct.id
。
これまでテーブルに製品がなく、購入もしていないとします。誰かが ID 10 の製品を購入した場合、単純に次のクエリを実行するとエラーが発生します。
INSERT INTO purchases (fk_productid, buyName) VALUES (10, "Andreas")
とにかく購入を挿入するにはどうすればよいですか? 次の 2 つのことが考えられます。
NULL を として追加します
fk_productid
が、失敗した場合にクエリで直接行うにはどうすればよいですか?テーブルにダミーのエントリを追加し
product
ますが、どうすればよいでしょうか? 自動的に追加するにはどうすればよいですかINSERT INTO products (id, name) VALUES (10, "???")
他のクエリの前に?
これはトリガー、手順で行うべきですか、それとも私が知らないもっと簡単な方法がありますか?