首先介绍一下我们DDL(数据库定义语言):其操作主要是针对我们的MySQL中的表结构,表结构的增删查改,表结构的查询,接下来一一做介绍:
首先DDL中的增(add)、删(drop)、改(modify,change)、查(show,desc)
牢记:数据库结构的操作语言中,都必须是alter table起手
ok,干点实操
首先建个库:建库语法:create database 库名;
开始建库
查看所有的库
很多时候,我们想知道当前所在的数据库在哪儿?可以使用select database();一般带括号的东西都是函数,这点好像很通用。
选择我们的创建库之后,我们的就可以开始建表了
1、增:
语法:alter talbe 表名 add 列名 数据类型 [first | after 旧字段名];其中中括号里边的项为可选项,也就是可以指定我们的字段的所放在表的位置,默认是追加放置。
比如,当我们发现我们应该给每个学生增加一个记录学生年龄的字段,这时就可以使用下边的语法进行添加
执行:alter table test1 add age tinyint unsigned;
指定位置添加字段:比如,此刻想添加一个说明学生专业的字段在姓名字段的后边
执行:alter table test1
add major varchar(20) after student_name;
增加到此为止!
2、删除:使用关键字drop,牢记alter table起手
语法:alter table 表名 drop column 列名;注意:DDL中有两个语法需要添加column关键字,这是其一,还有一个在modify中出现
比如,我们觉得,说明学院的编号该字段没必要
执行:alter table test1 drop column id;
3、修改:修改稍稍较难,但是牢记两个关键字modify(该数据类型)、change(该字段名称)
语法:alter table 表名 modify 原字段名称 新数据类型;
alter table 表名 change 旧字段名 新字段名 原数据类型;注意:这个原数据类型必须 跟,也许规矩就是规矩
比如,我们觉得单纯一个age并不能给我们提供很多一眼就知道的信息,我们想把它做修改
执行:alter table test1 change age student_age tinyint unsigned;
修改数据类型,比如在这里把major字段的类型给定为test类型
执行:alter table test1 modify student_name text;
最后就是修改我们的表名了
语法:alter table 旧表名 rename to 新表名;
执行:alter table test1 rename to bigdata_class02_student;
4、至于查看
desc 表名:查看结构
show create table 表名:详细查看建表语句
show tables,show databases:查看数据库、数据表
实例:
使用desc 查看我们的建表结构:
创建我们的员工表:
--创建一张员工表------------
create TABLE emp(
id int comment '岗位编号',
work_number VARCHAR(10) COMMENT '员工工号',
work_name varchar(10) COMMENT '员工姓名',
work_gender char(1) COMMENT '员工性比',
work_age TINYINT UNSIGNED COMMENT '员工年龄',
id_card char(18) COMMENT '员工的身份证编号',
entry_date date COMMENT '员工入职时间'
);
插入数据