手把手教你mysql(十七)对Table操作的补充

手把手教你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操作的补充内容,教程到这里就结束了,谢谢大家!.手把手教你mysql(十七)对Table操作的补充

手把手教你mysql(十七)对Table操作的补充

上一篇:SQL查询中in和exists的区别分析


下一篇:基于DDH+Mybase降本合规的最佳实践