修改数据库属性、表属性、字段结构的权限
一、如果直接执行ALTER语句,只需要有ALTER权限即可。
注意:表名的修改不止这一个权限。
增加字段
ALTER TABLE hotel ADD tag1 CHAR(2) NOT NULL DEFAULT ‘0’ COMMENT ‘R=初始 H=停用 I=在用’ AFTER id ;
删字段
ALTER TABLE hotel DROP id_2 ;
改字段信息
ALTER TABLE hotel MODIFY tag1 INT COMMENT ‘11’ ;
改表信息
ALTER TABLE hotel ENGINE=INNODB ;-- 引擎
ALTER TABLE hotel CHARSET=utf8 ;-- 字符集
ALTER TABLE hotel COLLATE=utf8_general_ci ;-- 数据库排序规则
改库信息
ALTER DATABASE test CHARSET=utf8 ;-- 字符集
ALTER DATABASE test COLLATE=utf8_general_ci ;-- 数据库排序规则
二、如果用数据库管理工具(如:SQLyog),在图形界面上进行表信息的修改,还需要select权限。
有了select权限,才可以看到这张表的字段信息、索引信息,表信息等,然后再有了alter权限,就可以对表字段、引擎、字符集、核对信息进行修改。
三、表名的修改(RENAME)
表名的修改,无论是语句修改还是图形界面上修改,都要含以下权限:alter、create、insert、drop(图形界面上修改要多一个select权限)。
相当于,先以新名创建一张表(create),再把数据插入(insert),最后老的那张表drop掉(drop)。
ALTER TABLE hotel RENAME TO hotel1 ;