日期:2014-05-16  浏览次数:20850 次

mysql修改自增长的主键

原来有一个表中的主键是int自增长类型,

因为业务变化需要把int改成char类型的主键。同时因为原来的表中已经存在了数据,不能删除表重建,只能修改表结构。

首先去掉自增长属性:

alter table table_name? change indexid indexid int;

然后去掉主键:

ALTER TABLE table_name?? DROP?? primary key;

修改表结构为char类型:

alter table table_name change indexid indexid char(18);

最后重新添加主键:

alter table table_name add primary key(indexid);