ALTER TABLE purchase ADD CONSTRAINT tb_uq UNIQUE (item_id, user_id)
INSERT INTO purchase (item_id, user_id, time) VALUES (:item_id, :user_id, :time)
我有一个表item_id
,user_id
,time
item_id
& user_id
将是唯一的(用户只能购买一次项目)
如果用户单击按钮并再次加载此SQL,则会导致Fatal Error
因为行已存在。
我的问题是我不希望在count(*)
之前使用额外查询INSERT
,所以无论如何只是忽略它并避免Fatal Error
而无需额外查询?
答案 0 :(得分:1)
你可以做到
INSERT IGNORE INTO purchase (item_id, user_id, time) VALUES (:item_id, :user_id, :time)