李斯特 发表于 2018-10-1 12:14:26

mysql批量修改字段名(列名)

  因为需要修改字段名,但是有上百个表一个个修改,绝对不是什么好干的事。
  一、检索所有需要修改的字段。
  比如,在sgk数据库里,想把所有是User字段修改成UserName字段。
mysql> select TABLE_NAME from information_schema.`COLUMNS` where lower(TABLE_SCHEMA)='sgk' and lower(COLUMN_NAME)='user';  二、写SQL脚本替换字段名。
  1.数据库名:sgk,表名:bbs_2016,旧字段名:User,新字段名:UserName,varchar(255)字段类型要写对
mysql> alter table sgk.bbs_2016 change User UserName varchar(255) not null;  2.成功后就会显示下图

  3.如果有很多表,可以写在文本文件里,后缀改成sql在命令行里执行。
  default是我存放脚本sgk.sql的目录,sgk数据库名必须指定,否则会报错。或者把脚本内容自己复制到mysql命令行里执行。

  脚本内容:

  参考文章:
  http://blog.sina.com.cn/s/blog_659bd4f40101bimq.html
  http://bbs.csdn.net/topics/330061462 1楼ACMAIN_CHM版主回答


页: [1]
查看完整版本: mysql批量修改字段名(列名)