手把手教你mysql(十七)对Table操作的补充
一: 前言
今天在整理文章的时候,发现第三讲有关Table讲的比较少,所以补充一下。
二: 补充
ALTER [IGNORE] TABLE tbl_name alter_spec [, alter_spec ...]alter_specification: ADD [COLUMN] create_definition [FIRST | AFTER column_name ] or ADD INDEX [index_name] (index_col_name,...) or ADD PRIMARY KEY (index_col_name,...) or ADD UNIQUE [index_name] (index_col_name,...) or ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT} or CHANGE [COLUMN] old_col_name create_definition or MODIFY [COLUMN] create_definition or DROP [COLUMN] col_name or DROP PRIMARY KEY or DROP INDEX index_name or RENAME [AS] new_tbl_name
上面是ALTER TABLE的完整语法,咱们一个个练过来就会了,首先先创建一张表.
Mysql>CREATE TABLE t_student(
id INT,
NAME VARCHAR(20) NOT NULL
);
2.1 ADD [COLUMN] create_definition [FIRST | AFTER column_name ]:添加指定字段
在name后添加sex字段类型为varchar(6)默认为男
Mysql>ALTER TABLE `t_student`
ADD COLUMN `sex` VARCHAR(6) DEFAULT ‘男‘ AFTER `name`;
2.2 ADD INDEX [index_name] (index_col_name,...) 在指定字段上添加索引
在name字段上添加索引
Mysql>ALTER TABLE `t_student`
ADD INDEX `index_name`(`name`);
2.3 ADD PRIMARY KEY (index_col_name,...):在指定字段上添加主键
在id字段上添加主键
Mysql>ALTER TABLE `t_student`
ADD PRIMARY KEY(`id`);
2.4 ADD UNIQUE [index_name] (index_col_name,...):添加唯一索引
2.5 ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT}:修改字段
删除sex字段的默认值mysql>ALTER TABLE `t_student`
ALTER COLUMN `sex` DROP default;
2.6 CHANGE [COLUMN] old_col_name create_definition:可以同时改变字段名和字段类型
将name字段改为name2长度改为30
Mysql>ALTER TABLE `t_student`
CHANGE COLUMN `name` `name2` VARCHAR(30) NOT NULL;
2.7 MODIFY [COLUMN] create_definition:只能改变字段类型
将sex字段长度改为8类型不变 默认值为男
Mysql>ALTER TABLE `t_student`
MODIFY COLUMN `sex` VARCHAR(8) DEFAULT ‘男‘;
2.8 DROP [COLUMN] col_name: 删除指定字段
删除sex字段
Mysql>ALTER TABLE `t_student`
DROP COLUMN `sex`;
2.9 DROP PRIMARY KEY: 删除主键
Mysql>ALTER TABLE `t_student`
DROP PRIMARY KEY;
2.10 DROP INDEX index_name: 删除指定索引
Mysql>ALTER TABLE `t_student`
DROP INDEX `index_name`;
2.11 RENAME [AS] new_tbl_name: 重命名表
Mysql>ALTER TABLE `t_student` RENAME t_student2;
三: 总结
今天为大家带来了对Table操作的补充内容,教程到这里就结束了,谢谢大家!.