最新消息:XAMPP默认安装之后是很不安全的,我们只需要点击左方菜单的 "安全"选项,按照向导操作即可完成安全设置。

mysql妙用:利用information_schema批量更改列属性

XAMPP案例 admin 83浏览 0评论

今天的文件我们来分享如何批量更改列属性,比如说:某个数据库有300个表,我要批量把这些表的varchar字段的排序规则改掉。手动去改肯定太费事。我们现在来做个一键修改。

要完成这个功能,我们首先要对mysql的information_schema非常熟悉。不熟悉也没关系,跟着老猫一起来走个过场就熟悉了。

在MySQL中,把 information_schema 看作是一个数据库,确切说是信息数据库。其中保存着关于MySQL服务器所维护的所有其他数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权 限等。在INFORMATION_SCHEMA中,有数个只读表。它们实际上是视图,而不是基本表,因此,你将无法看到与之相关的任何文件。

如图所示:

这次我们使用COLUMNS表来完成:

这个表的表结构如下:

最后我们生成我们想要的语句,来批量修改表属性:

select concat("ALTER TABLE ",TABLE_NAME,' modify column ',COLUMN_NAME,'  ',COLUMN_TYPE,';') from  `COLUMNS` where COLLATION_NAME = 'utf8_unicode

上述语句的结果如下:

转载请注明:XAMPP中文组官网 » mysql妙用:利用information_schema批量更改列属性

您必须 登录 才能发表评论!