强大的alter

作者:zccst
alter的主要作用是修改已经建立的表结构。主要是那些由于权限或历史原因,不能drop后重新创建的情况。

[size=medium]一、修改引擎[/size]
[color=red]alter table table_name engine=innodb;[/color]


[size=medium]二、修改库、表、字段的字符集[/size]

修改数据库字符集:
ALTER DATABASE db_name DEFAULT CHARACTER SET character_name [COLLATE ...];


把表默认的字符集和所有字符列(CHAR,VARCHAR,TEXT)改为新的字符集:
ALTER TABLE tbl_name CONVERT TO CHARACTER SET character_name [COLLATE ...]
[color=red]如:ALTER TABLE logtest CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;[/color]


只是修改表的默认字符集:
ALTER TABLE tbl_name DEFAULT CHARACTER SET character_name [COLLATE...];
如:ALTER TABLE logtest DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;


修改字段的字符集:
ALTER TABLE tbl_name CHANGE c_name c_name CHARACTER SET character_name [COLLATE ...];
如:ALTER TABLE logtest CHANGE title title VARCHAR(100) CHARACTER SET utf8 COLLATE utf8_general_ci;


查看数据库编码:
SHOW CREATE DATABASE db_name;

查看表编码:
SHOW CREATE TABLE tbl_name;

查看字段编码:
SHOW FULL COLUMNS FROM tbl_name;


[size=medium]三、重命名表[/size]

ALTER TABLE 【表名字】 RENAME 【表新名字】


[size=medium]四、修改列[/size]
1,修改为自增
[color=red]alter table network_section_list change `id` `id` int(11) not null auto_increment;[/color]

2:删除表中主键

Alter TABLE 【表名字】 drop primary key

3:添加主键

ALTER TABLE sj_resource_charges ADD CONSTRAINT PK_SJ_RESOURCE_CHARGES PRIMARY KEY (resid,resfromid)


4:删除列

ALTER TABLE 【表名字】 DROP 【列名称】

5:增加列

ALTER TABLE 【表名字】 ADD 【列名称】 INT NOT NULL COMMENT '注释说明'

6:修改列的类型信息

ALTER TABLE 【表名字】 CHANGE 【列名称】【新列名称(这里可以用和原来列同名即可)】 BIGINT NOT NULL COMMENT '注释说明'

7:重命名列

ALTER TABLE 【表名字】 CHANGE 【列名称】【新列名称】 BIGINT NOT NULL COMMENT '注释说明'


[size=medium]五、修改索引[/size]

1:添加索引

ALTER TABLE sj_resource_charges add index INDEX_NAME (name);

2: 添加唯一限制条件索引

ALTER TABLE sj_resource_charges add unique emp_name2(cardnumber);

3: 删除索引

alter table tablename drop index emp_name;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值