MySQL修改表结构

在MySQL v5.1和v5.5下测试部分方法不起作用。

 

数据表改名

 

ALTER TABLE `x_table` RENAME TO `y_table`;

字段改名

ALTER TABLE `x_table` RENAME `a_field` TO `b_field`;

修改字段

 

ALTER TABLE `x_table` CHANGE `a_field` `a_field` varchar(40) NOT NULL DEFAULT '' COMMENT '密码';

部分修改字段

 

ALTER TABLE `x_table` CHANGE `a_field` SET NULL DEFAULT NULL; -- 这两个方法不正确

ALTER TABLE `x_table` CHANGE `a_field` DROP DEFAULT;

增加字段

 

ALTER TABLE `x_table` ADD `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'ID' FIRST;

ALTER TABLE `x_table` ADD `b_field` varchar(40) NOT NULL DEFAULT '' COMMENT '密码' AFTER `a_field`;

删除字段

 

ALTER TABLE `x_table` DROP `a_field`;

修改主键自增值

 

ALTER TABLE `x_table` AUTO_INCREMENT=1;

或者另一个方法

 

OPTIMIZE TABLE `x_table`;  -- 此方法无效

AUTO_INCREMENT 的值只会大于或等于 最大id + 1

当设置的AUTO_INCREMENT比上面值还小时,会自动被设置为 最大id + 1

更改主键或索引

 

ALTER TABLE `x_table` DROP PRIMARY KEY (`id`);

ALTER TABLE `x_table` ADD KEY `m_index` (`m_field`) USING BTREE; -- Unique index

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值