mysql之查找所有数据库中没有主键的表问题

吾爱主题 阅读:136 2023-03-24 13:38:00 评论:0

查找所有数据库中没有主键的表

?
1 2 3 4 5 6 7 select table_schema,table_name from information_schema.tables where (table_schema,table_name) not in (      select distinct table_schema,table_name from information_schema.columns where COLUMN_KEY= 'PRI'    ) and table_schema not in (      'sys' , 'mysql' , 'information_schema' , 'performance_schema' --排除系统库 );

修改mysql数据表主键

这里以网上copy的建表语句为例

?
1 2 3 4 5 6 7 8 9 10 11 create table users (     name       varchar (50)                         null ,     salt       char (4)                             null comment '盐' ,     password   varchar (255)                         null comment '密码' ,     create_at timestamp default CURRENT_TIMESTAMP null comment '创建时间' ,     update_at timestamp default CURRENT_TIMESTAMP not null on update CURRENT_TIMESTAMP comment '修改时间' ,     tid       int unsigned auto_increment         primary key )     charset = utf8;

mysql的版本是8,这里要把主键tid改为id。需改自增主键需要三步骤

先删除掉自增

?
1 alter table   users modify tid int not null ;

再删除主键

?
1 alter table   users drop primary key ;

修改名称

?
1 alter table   users change tid id int unsigned auto_increment primary key ;

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/ailo555/article/details/82706756

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容