创建新字段后在mysql中插入新数据

时间:2019-12-05 20:33:28

标签: mysql

在不使用更新功能的情况下添加列后如何在列中插入新数据。例如 “ alter table Employee add column Gender varchar(1) after Birthdate,那么当我使用此语句insert into Employee(ENumber,EmpName,Birthdate,Address,Salary,DNumber,Gender) -> values -> ('E001','GSInocencio','1988-01-15','Munoz',18000,'D005','F'),时我错了 它给我错误Duplicate entry 'E001' for key 'PRIMARY' MariaDB [Employees_Valdez]>

1 个答案:

答案 0 :(得分:1)

消息非常清楚:您已经有一个具有该ENumber值的员工。

您对该列有一个UNIQUE约束,它是一个PRIMARY KEY,因此请选择其他值或使用其他主键。

要注意的一件事是MySQL不能非常有效地使用复杂的字符串主键,因为它们是如此之大,它们在关联数据方面也确实很麻烦。通常最好先包含一个标准的id INT AUTO_INCREMENT PRIMARY KEY列,然后将ENumber作为辅助UNIQUE约束。

然后,您可以使用4字节的id值来关联数据,如果担心BIGINT就像您可能有20亿员工,则可以使用8字节来关联数据。