|
我们知道ddl语句不仅有创建删除数据库和创建删除表的功能,还有修改已创建表的功能,文中实例代码对学习或是工作者复习都很有帮助,下面跟着小编一起去看看ddl语句吧。 
在学习本篇文章之前,你要先创建一个数据库,以及若干个表(一个表也可以)。在文章开启前我创建了一个叫student的数据库,以及stu的数据表,下面所有操作都是基于此表的。可以看看stu表的数据,以便后续操作产生对比。 ![1616643952751156.png ZKNVHYU9]HWBDC2OM}S]C_F.png](https://img.php.cn/upload/image/412/275/244/1616643952751156.png)
修改表字段类型 语法:
alter table 表名 modify [colimn] 字段定义 [first|after字段名];
其中: 表名是指我们需要修改的数据表的名称,例如本文的stu 字段定义是指我们需要修改的字段名字以及字段类型 mysql> alter table stu modify column name char; 
通过这种方式可以将stu表中的name字段修改为char类型。 增加表字段 语法: alter table 表名 add [colimn] 字段定义 [first|after字段名];
mysql> alter table stu add column sex int; ![1616644350871494.png 6$D2LJ_H4][QW7$KK]GACWF.png](https://img.php.cn/upload/image/923/596/493/1616644350871494.png)
执行上述语句后,我们再使用desc查看表单时候,发现多了一个sex的字段,表明我们添加字段成功了。 删除表字段 语法: alter table 表名 drop [colimn] 字段名;
mysql> alter table stu drop sex; 
我们可以看到刚刚增加的字段现在已经删除了,没有sex字段了。 字段改名 语法: alter table 表名 change [colimn] 旧的字段名 字段定义 [first|after字段名];
mysql> alter table stu change name mingzi char; ![1616644655164459.png _[S_KA[E]P_S]TT6RCW[89L.png](https://img.php.cn/upload/image/492/481/251/1616644655164459.png)
这样可以将原本的name字段改名为mingzi,如果不想修改字段名字而是想要修改字段类型,同样可以使用这个方法 mysql> alter table stu change mingzi mingzi int; ![1616644773692622.png X46J9`(PFZ1]_FXV_1}FC2F.png](https://img.php.cn/upload/image/128/240/423/1616644773692622.png)
这样可以在不修改字段名的情况下,修改字段类型。
注:change与modify都可以修改表的定义,不同的是change后面需要接两次列名,不是特别方便,优点是change可以修改字段名。 修改字段排列排序 [first|after字段名]这个选择可以用来修改字段在表中的位置,新增字段默认是加载在表中最后位置,而change/modify默认不会改变字段位置。
注:change/first|after 字段名 这些关键字是属于mysql在标准sql上的扩展,在其他数据库上不一定适用。 更改表名 语法: alter table 表名 rename [to] 新的表名;
mysql> alter table stu rename students; 
这样我们就能够修改数据表的名字了。 |