DDL语句:

对数据库内部的对象进行创建、删除、修改等操作的语言,DDL语句更多的是由数据库管理员(DBA)使用,开发人员一般很少使用登录mysql之后就可以使用sql语句对数据库进行各种操作啦!

实践操作:

在基础操作之前,如果没有安装mysql的可以参考我之前写的一篇文章(windows)windows命令行使用mysql
还有,MYSQL不区分大小写,这里为了演示看的清楚,我们使用小写。
show databses; #查看数据库列表 后面的分号别落下了!!!
MYSQL学习系列--DDL语句_第1张图片
1)创建数据库
1>使用create database 数据库名;
2>选择要操作的数据库:USE 数据库; 对于要操作的数据库我们需要使用use来选择一下!
3>查看数据库中所有的数据表show tables;
MYSQL学习系列--DDL语句_第2张图片
2)删除数据库:
drop database 数据库名;
我们创建一个will_del的数据库,然后在删除它;
MYSQL学习系列--DDL语句_第3张图片
3)创建表(在哪个数据库里面创建表需要先使用use选择到那个要操作的数据库)
1>创建表
create table 表名(
字段1名 字段1类型 列的约束条件,
字段2名 字段2类型 列的约束条件,
...);
2>创建完表之后可以查看表的定义
desc 表名;
3>查看创建表的SQL语句
show create table 表名 \G
\G选项使得记录能够按照字段竖向排列,以便更好地显示内容较长的记录,\G后面无需再加分号。
我们创建一个学生名单,字段有学生号(ID),名字(name),简单的演示一遍。
首先,我们需要使用一个数据库(在哪个数据库里建表)
MYSQL学习系列--DDL语句
创建student数据表
MYSQL学习系列--DDL语句
查看创建表的定义
MYSQL学习系列--DDL语句_第4张图片
查看创建表的sql语句
MYSQL学习系列--DDL语句_第5张图片
4)删除表
drop table 表名;
我们任意添加任何字段创建一个测试表来演示
MYSQL学习系列--DDL语句_第6张图片
5)修改表
1>修改表的字段类型
alter table 表名 modify [column] 字段定义 [first|after 字段名];
我们将student这个表ID这个字段类型从Int(11)改成Int(12)
MYSQL学习系列--DDL语句_第7张图片
2>增加表字段
alter table 表名 add [column] 字段定义 [first|after 字段名];
我们将student表增加一个sex 性别的字段
MYSQL学习系列--DDL语句_第8张图片
3>删除表字段
alter table 表名 drop [column] 字段名;
我们把刚刚加的sex删除掉
MYSQL学习系列--DDL语句_第9张图片
4>字段改名
alter table 表名 change [column] 旧的字段名 字段定义 [first|after 字段名];
我们把ID字段改成(number)并且字段类型修改成int(11)
MYSQL学习系列--DDL语句_第10张图片
注:change与modify都可以修改表的定义,不同的是change后面需要接两次列名,不方便,但是优点是change可以修改字段名称
5>修改字段排列排序
前面介绍的字段增加和修改语法(add/change/modify)中,都有一个可选项first|after 字段名,这个选择可以用来修改
我们让name字段在第一个
alter table student modify Name tinyint first;
MYSQL学习系列--DDL语句_第11张图片
我们再让它到number后面去
alter table student modify Name tinyint after number;
MYSQL学习系列--DDL语句_第12张图片
字段在表中的位置新增的字段默认是加载在表中最后位置,而change/modify 默认都不会改变字段的位置
注意:change/first|after 字段名 这些关键字都是属于MySQL在标准SQL上的扩展,在其他的数据库上不一定适用
6)更改表名
alter table 表名 rename [to] 新的表名;
我们将student改成md
alter table student rename to md;
MYSQL学习系列--DDL语句_第13张图片