### 数据定义语言
> ```
> 1.创建数据库的语句
> create database 数据库名字 character set utf8; #并指定数据库的编码为utf8 --- 方便添加的汉字数据
> 或者
> create database 数据库名字 charset utf8;
> 2.查询所有的数据库
> show databases;
> 3.切换到要用的数据库
> use 数据库名;
> 4.没有设置数据库编码 怎么修改
> 查看数据库的信息 show create database 数据库名 \G;
> 修改数据库编码 alter database 数据库名 charset utf8;
> 5.删除数据库
> drop database 数据库名;
> 6.数据库存放的位置
> show variables like "%data%";
> ```
>
> ```
> 员工表: 员工id(唯一标识) 姓名 年龄 性别 薪资 奖金 入职日期 领导编号 部门编号(关联部门表中的部门编号 --- 外键)
> 部门表: 部门编号(唯一标识) 部门名称
>
>
>
> ```
>
> ```
> 创建表的语句:
> create table 表名(字段名 字段类型 [该字段对应的约束],
> 字段名2 字段类型 [约束],
> ...
> 字段n 字段类型 [约束]
> );
>
> 约束:
> 1.主键约束(primary key)
> 一张表只有一个主键
> 给这张表设置一个主键, 主键的特点: 值是不允许重复的 不允许为null
> 这个主键是数据的唯一标识
> 2.自增长(auto_increment)
> 约束整型数据 让整型数据在每添加一条数据的时候 自增长的字段自动+1 这个自增长这个约束 是跟主键关联在一起的
> 3.非空约束(not null)
> 约束这个字段的值不能为空
> 4.唯一约束(unique)
> 值是不允许重复的 但是可以有多个null
> 5.默认值
> default 默认值
> 给字段设置一个默认值
> 6.外键约束 ---- 关联多张表的 ---- 体现表和表之间的关系
> 一张表可以有多个外键
> 外键关联的是另外一张表
> 外键关联的时候
> 主表
> 相关联字段中主键所在的那张表称为主表
> 从表
> 相关联字段中外键所在的那张表称为从表
> 外键所在的表 --- 只的是外键的值是由另一张的表中的对应字段的值决定的
> 员工表中的部门编号的值 是由 部门表中部门编号决定的
>
> 部门表中部门编号起的是主导作用 ---- 主导作用所在的那个表 就是主表
>
> 从表中的外键对应的数据是跟随者主表中的关联键的数据走的 从表中外键的值可以为null 如果不为null值的情况下 他的值必须在主表中存在
> ```
>
>