0

次の構造の証券価格の表があります。

CREATE TABLE IF NOT EXISTS `security_prices` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `price_date` date NOT NULL,
  `ticker` varchar(36) NOT NULL,
  `price` decimal(10,6) NOT NULL,
  PRIMARY KEY (`id`)
)

id主キーとして存在するだけで、それ以外の目的はありません。ただし、明らかなように、1 つのレコードに同じ が多数あり、同じtickerが多数のレコードに存在することもありますがprice_date、2 つのレコードが同時に同じtickerであってはなりませんprice_date

これら 2 つのフィールドに一意の制約を定義するにはどうすればよいですか?また、整合性違反を処理しながらデータベースに INSERT する最良の方法は何ですか?

現在、phpmyadminでMySQLを使用しています。

4

1 に答える 1