在我的php / mysql应用程序中,我让用户保存项目,例如:"添加到列表"
我应该如何构建表以防止用户两次保存相同的项目?
现在我的表看起来像
id - 主键,递增
u_id - 外键,指向用户表中用户主键的链接
i_id - 外键,指向项目表中项目主键的链接
为了防止用户两次保存相同的项目,我可以构建我的表吗?或者在进行保存/插入查询之前是否必须进行检查?
答案 0 :(得分:1)
您只想在两列上使用唯一索引(或唯一约束,这是相同的事情):
create unique index idx_mytable_u_i on (u_id, i_id)
数据库将保证不插入重复项。