MYSQL新建一个表已设定主键想在表中在mysql添加主键一个主键,出现错误信息本人新人望高手解释一下不胜感激

mysql表已经建立完毕id是主键,现在想把id设置成自增,求高手指教啊_百度知道
mysql表已经建立完毕id是主键,现在想把id设置成自增,求高手指教啊
提问者采纳
增列必须是int类型:修改对于之前已经插入的数据不起作用。具体的修改语句的话;补充一点,前面的这位已经贴出来了。alter table yourtablename change id id int auto_increment,对于修改后插入的数据起效
提问者评价
其他类似问题
为您推荐:
其他3条回答
RT 请指点,不重建表的情况下是否可以解决? 把自增字段 的起始值 设高点就好了 ,SaXkiw
alter table 表名 change id id int auto_修改表 id字段 保留原名 字符类型为int 自增属性
建表的时候选这里
mysql的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁MySQL用户信息表中主键userID自动增加问题 - macctown - 博客园
随笔 - 24, 文章 - 0, 评论 - 3, 引用 - 0
我建了一个userinfo的表,存储一些相关信息。
主键是userID,设置了AUTO_INCREMENT属性。
在我写了7条数据之后,再写入一条,userID应该是8.
之后我把userID为8的记录删除了,再写入一条userID就是9了。
这个问题,有办法解决么?
正统网站注册这一块是怎么解决这个问题的?
还是就这样无所谓。
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
解决方法:
  把userID的自动增加属性取消,然后用
    $read = "SELECT * FROM userinfo"; //SQL查询语句     $rs = mysql_query($read, $con); //获取数据集     $id=mysql_num_rows($rs)+1;
    这个方法获取记录数,再加一,作为新ID写入数据库。   解决了~
&-----------------------------------------------------------------------------------------------------------------------------------------
 解决后又出现的问题:
  取消自动增加属性之后,还会出现一个问题,这个userID是主键,所以在删除之后,再加入新的记录的时候会出现:Duplicate entry 'X' for key 'PRIMARY' 的问题。。。这个有办法解决么?504 Gateway Time-out
504 Gateway Time-outMySQL建立一个数据库中有多张表,每个表中都有id作为主键,为什么第一张表会报错?
表一t_class:CREATE TABLE `t_class` (& `id` int(20) NOT NULL,& `ClassName` varchar(20) DEFAULT NULL,& `GradeID` int(11) DEFAULT NULL,& `ClassDesc` varchar(20) DEFAULT NULL,& PRIMARY KEY (`id`),& KEY `FK_t_class` (`GradeID`),& CONSTRAINT `FK_t_class` FOREIGN KEY (`GradeID`) REFERENCES `t_grade` (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;表二t_grade:CREATE TABLE `t_grade` (& `id` int(10) NOT NULL,& `GradeName` varchar(20) DEFAULT NULL,& `GradeDesc` varchar(20) DEFAULT NULL,& PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;表三t_student:CREATE TABLE `t_student` (& `id` int(20) NOT NULL AUTO_INCREMENT,& `StudentNum` int(20) DEFAULT NULL,& `StudentName` varchar(20) DEFAULT NULL,& `StudentSex` varchar(10) DEFAULT NULL,& `StudentBirthday` date DEFAULT NULL,& `StudentPlace` varchar(20) DEFAULT NULL,& `StudentClassId` int(20) DEFAULT NULL,& `StudentGradeId` int(10) DEFAULT NULL,& `StudentDesc` varchar(30) DEFAULT NULL,& PRIMARY KEY (`id`),& KEY `FK_t_student` (`StudentClassId`),& CONSTRAINT `FK_t_student` FOREIGN KEY (`StudentClassId`) REFERENCES `t_class` (`id`)) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8;表四t_user:CREATE TABLE `t_user` (& `id` int(11) NOT NULL AUTO_INCREMENT,& `UserName` varchar(20) DEFAULT NULL,& `PassWord` varchar(30) DEFAULT NULL,& PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;本人初学MySQL没多久,求大神帮忙看看错误出在哪里了,具体怎么修改。。。主键,外键问题一直都搞不懂,有时候添加外键后就会出如图警告,也不知道怎么回事,真心求教啊!!!!!!
最新教程周点击榜
微信扫一扫

我要回帖

更多关于 mysql创建主键 的文章

 

随机推荐