个人主页:兜里有颗棉花糖
欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创
收录于专栏【MySQL学习专栏】🎈
本专栏旨在分享学习MySQL的一点学习心得,欢迎大家在评论区讨论💌
前言:SQL语句的分类
SQL语句主要分为以下4类,请看:
分类 | 说明 |
---|---|
DDL (Data Definition Language) | 数据定义语言,用于定义数据库、表、视图等对象的结构 |
DML (Data Manipulation Language) | 数据操作语言,用于对数据库中的数据进行增添、修改和删除操作 |
DQL (Data Query Language) | 数据查询语句,用于从数据库中检索数据,最常见的是SELECT语句。 |
DCL Data Control Language | 用来创建数据库用户,控制数据库的访问权限。 |
本文对DDL语句的语法进行讲解。
目录
- 前言:SQL语句的分类
- 一、数据库操作
- 1.1查询
- 1.2创建数据库
- 可选项:if not exists
- 1.3删除数据库
- 1.4使用数据库
- 二、表操作(创建与查询)
- 2.1创建
- 2.2查询
- 2.3修改
- 添加字段
- 修改数据类型
- 修改字段名和字段类型
- 删除字段
- 修改表名
- 2.4删除
- 三、DDL语句总结
一、数据库操作
1.1查询
查询所有数据库:SHOW DATABASES;
查询当前数据库:SHOW DATABASE();
SHOW DATABASE();
举例:
查询当前数据库(用于查询当前处于哪个数据库下):
SHOW DATABASE();
1.2创建数据库
创建数据库:CREATE DATABASE [IF NOT EXISTS] 数据库名 [DEFAULT CHARSET 字符集] [COLLATE 排序规则];
例如:创建数据库tmp_database
,
输入命令:create database 数据库名称;
即create database tmp_database;
注意:最后的分号;
是英文版的分号;
请看:
出现Query OK, 1 row affected (0.05 sec)
说明数据库创建成功了。
我们不妨来看以下刚刚创建的数据库,输入命令:
show databases;
,请看:
如果我们此时再次创建相同的数据库
tmp_database
,就会报错,请看:
报错原因当然就是数据库已经存在。
可选项:if not exists
如果不想出现报错的话(即如果数据库已经存在的话,我们就不要进行该数据库的创建了),此时我们就可以添加可选项:if not exists
。输入命令:create database if not exists tmp_database;
请看演示:
当然,如果我们要创建的数据库不存在的话,当然会创建成功了。
1.3删除数据库
删除数据库:DROP DATABASE[IF EXISTS] 数据库名;
这里如果数据库存在,那么我们可以删除想要删除的数据库,此时我们可以添加可选项:if exists
命令:drop database if exists 想要删除的数据库
。
比如我们要删除之前创建的数据库tmp_database
,可以输入命令:drop database if exists tmp_database;
请看演示:
1.4使用数据库
使用数据库命令:USE 数据库名;
请看演示:
出现Database changed说明我们已经切换到了test数据库
。
二、表操作(创建与查询)
2.1创建
命令:
CREATE TABLE 表名(字段1 字段1类型[COMMENT 字段1注释],字段2 字段2类型[COMMENT 字段2注释],......字段n 字段n类型[COMMENT 字段n注释]
)[COMMENT 表注释];
这里需要我们注意的是:[...]
是可选的一个参数,还有就是最后一个字段后面是没有逗号,
的。
下面进入演示环节,我们试着通过CREATE TABLE
这个SQL语句来完成下图的表结构的创建:
这里我们首先要进入的是我们自己创建的数据库,而不是再系统中的数据库进行操作。
输入命令:
mysql> create table tb_person(-> id int comment '编号',-> name varchar(10) comment '姓名',-> age int comment '年龄',-> gender varchar(1) comment '性别'-> ) comment '用户表';
那如何验证这个数据库表创建成功呢,输入命令:
show tables;
,请看:
如上图所示,tb_person
就是我们刚刚创建的数据库表。
下面如果想要知道这个数据库表的字段和类型,输入命令:
DESC 表名;
,请看:
2.2查询
下面是表结构如何查询的三种语法:
第一种:查询当前数据库所有表。
命令:SHOW TABLES;
SHOW TABLES;
可以查询当前数据库的所有表结构,前提是,我们需要先使用USE 数据库名;
进入或者使用某个数据库,然后再根据SHOW TABLES;
来查询当前数据库的所有表结构。
请看演示:
我们切换到系统库sys中看一下:
可以看到当前数据库sys中有很多表结构,因为sys是一个系统库。
第二种:查询表结构。
命令:DESC 表名;
举例:输入命令:DESC tb_person;
第三种:查询指定表的建表语句。
命令:SHOW CREATE TABLE 表名;
举例:输入命令:show create table tb_person;
2.3修改
对表的修改操作以下面数据库test
中的表tmp
进行演示:
修改表的操作主要分为这几种:往表中添加字段、修改表中的字段、删除表中的字段、修改表中。
添加字段
第一种:往表中添加字段。
命令:ALTER TABLE 表名 ADD 字段名 类型(长度) [COMMENT 注释] 约束;
这里方括号[]
中的内容是依旧是可选的。
现在为emp表添加一个新的字段名称为nickname
,类型为varchar(20)
输入命令: alter table emp add nickname varchar(10) comment '名称';
演示如下:
查看以下表emp中的内容:
修改数据类型
修改数据类型命令:ALTER TABLE 表名 MODIFY 字段名 新数据类型(长度);
修改字段名和字段类型
修改字段名和字段类型命令:ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度) [COMMENT 注释] [约束];
下面进行案例的演示:将emp表中的nickname字段修改为username,类型为varchar(30);
输入命令:alter table emp change nickname username varchar(10);
删除字段
删除字段命令:ALTER TABLE 表名 DROP 字段名;
直接进入案例演示环节:将emp表中的username字段删除:
演示结果如下:
修改表名
修改表名命令:ALTER TABLE 表名 RENAME TO 新表名;
案例演示:将emp表的表名修改为employee;
输入命令:alter table emp rename to employee;
验证一下:show tables;
,请看:
2.4删除
删除表有两种:第一种是单纯的把表进行删除了,第二种是删除指定表并且重新创建该表。
第一种:仅仅删除表
命令:DROP TABLE[IF EXIST] 表名;
下面进入案例演示,删除tb_person
表。输入命令:drop table if exists tb_person;
结果如下(成功删除了表tb_person
):
第二种:删除指定表并且重新创建该表。
命令:TRUNCATE TABLE 表名;
下面进入演示阶段:
输入命令:truncate table employee;
三、DDL语句总结
本文我们主要介绍了DDL语句中的数据库操作和表操作。
数据库操作主要介绍了以下的语句:
SHOW DATABASES;
CREATE DATABASE 数据库名;
USE 数据库名;
SELETE DATABASE();
DROP DATABASE 数据库名;
表操作主要介绍了以下的语句:
SHOW TABLES;
CREATE TABLE 表名(字段 字段类型,字段 字段类型);
DESC 表名;
SHOW CREATE TABLE 表名; 显示该表的建表语句
ALTER TABLE 表名 ADD/MODIFY/CHANGE/DROP/RENAME TO...;
DROP TABLE 表名;
好了,友友们,以上就是DDL语句中的基本语法。
就到这里啦,再见!!!