常用的语法格式如下:
ALTER TABLE [修改选项]
修改选项的语法格式如下:
{ ADD COLUMN
| CHANGE COLUMN
| ALTER COLUMN { SET DEFAULT | DROP DEFAULT }
| MODIFY COLUMN
| DROP COLUMN
| RENAME TO }
添加字段
修改前的数据库表结构如下:
ALTER TABLE ADD [约束条件] [FIRST|AFTER 已存在的字段名];
【实例 1】使用 ALTER TABLE 修改表 tb_test1 的结构,在表的第一列添加一个 int 类型的字段 co1
修改后的数据库表结构如下:
提示:“FIRST 或 AFTER 已存在的字段名”用于指定新增字段在表中的位置,如果 SQL 语句中没有这两个参数,则默认将新添加的字段设置为数据表的最后列。
【实例 2】使用 ALTER TABLE 修改表 tb_test1 的结构,在一列 name 后添加一个 int 类型的字段 col2。
修改字段数据类型
ALTER TABLE MODIFY
其中,表名指要修改数据类型的字段所在表的名称,字段名指需要修改的字段,数据类型指修改后字段的新数据类型。
【实例 3】使用 ALTER TABLE 修改表 tb_test1 的结构,将 name 字段的数据类型由 VARCHAR(22) 修改成 VARCHAR(30)
删除字段
ALTER TABLE DROP ;
其中,字段名指需要从表中删除的字段的名称。
【实例 4】使用 ALTER TABLE 修改表 tb_test1 的结构,删除 col2 字段
修改字段名称
ALTER TABLE CHANGE ;
其中,旧字段名指修改前的字段名;新字段名指修改后的字段名;新数据类型指修改后的数据类型,如果不需要修改字段的数据类型,可以将新数据类型设置成与原来一样,但数据类型不能为空。
【实例 5】使用 ALTER TABLE 修改表 tb_test1 的结构,将 co1 字段名称改为 col3
提示:由于不同类型的数据在机器中的存储方式及长度并不相同,修改数据类型可能会影响数据表中已有的数据记录,因此,当数据表中已经有数据时,不要轻易修改数据类型。
修改表名
ALTER TABLE RENAME [TO] ;
其中,TO为可选参数,使用与否均不影响结果。
【实例 6】使用 ALTER TABLE 将数据表 tb_test1 改名为 test
三、删除数据表
当需要删除一个表的时候,可以使用 DROP TABLE 语句来完成,语法格式如下:
DROP TABLE [IF EXISTS] [ , , ] …
语法说明如下:
:被删除的表名。DROP TABLE 语句可以同时删除多个表,用户必须拥有该命令的权限。
表被删除时,所有的表数据和表定义会被取消,所以使用本语句要小心。
表被删除时,用户在该表上的权限并不会自动被删除。
参数IF EXISTS用于在删除前判断删除的表是否存在,加上该参数后,在删除表的时候,如果表不存在,SQL 语句可以顺利执行,但会发出警告(warning)。