您的位置:首页 > 数据库 > MySQL

笔记-mysql基础2-改变数据表结构

2011-11-29 16:36 489 查看
1、改变字段类型

有些数据库系统只允许ALTER TABLE 语句完成一个改动,但MySQL允许用一条ALTER TABLE 语句完成多个改动,只要用逗号把他们隔开。

改变某个数据列的数据类型,可使用MODIFY或CHANGE:

ALTER TABLE mytbl MODIFY i MEDIUMINT UNSIGNED;
或
ALTER TABLE mytbl CHANGE i i MEDIUMINT UNSIGNED;




CHANGE 子句需要写两遍数据列的名字,因为CHANGE能够(MODIFY 不能)在改变数据类型的同时重新命名一个数据列。如果想在改变其数据类型的同时把数据列i重新命名为

k,只需将第二个i换成k即可。如果你只需要改变数据列名称而不改变类型,只需要写出CHANGE old_name new_name 再写出数据列当前定义即可。

2、改变字符集

ALTER TABLE mytbl MODIFY i CHAR(20) CHARACTER SET utf-8;


3、改变存储引擎

ALTER TABLE tbl_name ENGINE = engine_name;


如果你打算让数据表改用另一种存储引擎时,能否达到你的目的还要取决于新老两种存储引擎的功能是否兼容。例如,以下转化就是不允许的:

MEMORY引擎支持BLOB数据列
只有MyISAM支持FULLTEXT或SPATIAL索引
只有InnoDB支持外键

4、重命名数据表
ALTER TABLE tbl_name RENAME TO new_tbl_name;
或
RENAME TABLE old_name TO new_name;


也可以使用RENAME交换两个表名称
RENAME TABLE t1 TO tmp, t2 TO t1, tmp TO t2;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: