当我们使用mysql数据库的时候,非常容易遇上mysql1075的报错。在mysql中1075报错的原因是一个字段设置了自动递增,另外一个字段被设置为主键,发生冲突。
在数据库当中,勾选自动递增的,系统会默认为主键,所以必须设置自增的一列为主键才可以。看到这里,很多同学可能有所疑惑,每个表都应有一个主键字段。主键用于对表中的行(注:列表中的每一行)进行唯一标识。每个主键值在每个表中必须是唯一的。此外,主键字段不能为空。
建表时通常这样设置:
>>CREATE TABLE mytable
>>(
>>id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
>>title VARCHAR(20),KEY(id)
>>);
就这样,就可以建立主键了
注意: 要确保主键字段不为空,我们必须向该字段添加 NOT NULL设置。
如果我们开始建表的时候没有设置任何字段为主键,那么,现在我们要添加一个主键或者说是要让一个字段变为自动编号,哪么该怎么办呢?
>>alter table myphp.users
>>modify column id int unsigned not null auto_increment,
>>add primary key(id);
就这样,不但设置了自动编号,同时设置了主键,就不会遇到mysql 1075错误了。