Mysql 如何创建一个表,其中一个值对另一个值只出现一次

Mysql 如何创建一个表,其中一个值对另一个值只出现一次,mysql,database,Mysql,Database,我想创建一个表来存储员工的出勤情况,我有6列,(员工代码、状态、入时、出时、总时间、日期),我想创建一个这样的表:员工代码的日期不应该重复,即员工一天的出勤情况不能再添加。有什么方法可以做到这一点。为了保证(employee\u code,date)元组的唯一性,您只需将这些列作为表的主键(或对其设置唯一约束): 注意:date不是一个很好的列名选择,因为它与同名的MySQL数据类型冲突。我建议换个名字 : 首先创建表,然后插入一次: INSERT INTO attendance(employe

我想创建一个表来存储员工的出勤情况,我有6列,(员工代码、状态、入时、出时、总时间、日期),我想创建一个这样的表:员工代码的日期不应该重复,即员工一天的出勤情况不能再添加。有什么方法可以做到这一点。

为了保证
(employee\u code,date)
元组的唯一性,您只需将这些列作为表的主键(或对其设置唯一约束):

注意:
date
不是一个很好的列名选择,因为它与同名的MySQL数据类型冲突。我建议换个名字

首先创建表,然后插入一次:

INSERT INTO attendance(employee_code, `date`) values (1, NOW());
当尝试再次插入相同的元组时,则会出现错误:

错误:ER_DUP_条目:键“PRIMARY”的重复条目“1-2019-09-28”

INSERT INTO attendance(employee_code, `date`) values (1, NOW());