mysql - 基于 2 列防止数据库表中出现重复条目

标签 mysql sql duplicates unique alter-table

我将比赛的数据记录在 MySQL 数据库中。

我需要为每个玩家提供唯一的条目,所以我这样做了:

alter table xtu_datas_competition add unique index(email);

它工作得很好。

但是有几个竞赛,所以我还有一个列 id_ 竞赛,并且我希望为电子邮件和特定列 id_ 竞赛拥有唯一的条目

例如:

2 identical email for 2 identical colum id_ competition : duplicate
2 identical email  for 2 different colum id_ competition : not duplicate

我如何调整我以前的代码?

最佳答案

您只需定义一个包含两列的唯一约束:

alter table xtu_datas_competition add unique index(id_competition,email);

希望这对您有帮助。

关于mysql - 基于 2 列防止数据库表中出现重复条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28780591/

相关文章:

php - 在 MySQL 和 php 中使用文本和整数以及应用内常量 "type"列之间的性能差异在哪里?

mysql - 我可以使用变量在mysql中指定OUTFILE吗

sql - 如果引用存在则连接表

sql - 在同一 SQL 查询中使用 "WITH"和 "UPDATE"语句

SSIS 数据流如何删除重复行但在 SSIS 中记录重复项

php - FaceBook 注册插件异步验证表单(检查用户名可用性)

mysql - 使用 HAVING、GROUP BY 和 GROUP_CONCAT 对 SQL 进行计数

mysql - 我存储 facebook 配置文件 ID 的 sql 表中的 int 长度应该是多少?

r - 通过保留所有行来查找重复行计数

duplicates - 如何从Lucene索引中获取唯一结果?