MySQL DDL数据定义语言示例总结
作者:会编程的土豆
文章主要介绍了数据库定义语言(DDL)的基本概念和操作,包括创建、修改、删除数据库和表等核心操作,以及如何查询数据库和表的相关信息,重点讲解了创建数据库、创建和修改表结构、删除表等常用操作,并对DROP、DELETE和TRUNCATE命令进行了区别说明
DDL:
Data Definition Language 数据定义语言
作用:
用于定义和管理数据库对象。
包括:
- 数据库
- 表
- 字段
- 约束
核心思想:
DDL 负责“结构” DML 负责“数据”
数据库操作
查询数据库
查询所有数据库
SHOW DATABASES;
查看当前 MySQL 中所有数据库。
查询当前使用的数据库
SELECT DATABASE();
查看当前正在操作哪个数据库。
创建数据库
CREATE DATABASE [IF NOT EXISTS] 数据库名 [DEFAULT CHARSET 字符集] [COLLATE 排序规则];
示例:
CREATE DATABASE IF NOT EXISTS school DEFAULT CHARSET utf8mb4;
关键点
IF NOT EXISTS
如果数据库不存在才创建。
存在则不报错。
DEFAULT CHARSET
指定字符集。
常用:
utf8mb4
支持:
- 中文
- emoji
- 特殊字符
COLLATE
指定排序规则。
一般很少手动写。
删除数据库
DROP DATABASE [IF EXISTS] 数据库名;
示例:
DROP DATABASE IF EXISTS school;
使用数据库
USE 数据库名;
示例:
USE school;
表示:
后续操作都在这个数据库中进行。
表操作
查询表
查询当前数据库所有表
SHOW TABLES;
查询表结构
DESC 表名;
示例:
DESC student;
查看:
- 字段名
- 类型
- 是否为空
- 主键
- 默认值
查询建表语句
SHOW CREATE TABLE 表名;
示例:
SHOW CREATE TABLE student;
作用:
查看当初创建表时的完整 SQL。
非常重要。
创建表
语法:
CREATE TABLE 表名(
字段1 类型 [COMMENT 注释],
字段2 类型 [COMMENT 注释],
字段3 类型 [COMMENT 注释]
)[COMMENT 表注释];
示例:
CREATE TABLE student(
id INT COMMENT '编号',
name VARCHAR(20) COMMENT '姓名',
age INT COMMENT '年龄'
) COMMENT '学生表';
修改表
添加字段
ALTER TABLE 表名 ADD 字段名 类型(长度) [COMMENT 注释] [约束];
示例:
ALTER TABLE student ADD gender CHAR(1) COMMENT '性别';
修改字段类型
ALTER TABLE 表名 MODIFY 字段名 新类型(长度);
示例:
ALTER TABLE student MODIFY name VARCHAR(50);
作用:
修改字段数据类型。
修改字段名
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度) [COMMENT 注释] [约束];
示例:
ALTER TABLE student CHANGE name username VARCHAR(30);
作用:
- 修改字段名
- 修改字段类型
一起完成。
修改表名
ALTER TABLE 旧表名 RENAME TO 新表名;
示例:
ALTER TABLE student RENAME TO student_info;
删除表
DROP TABLE [IF EXISTS] 表名;
示例:
DROP TABLE IF EXISTS student;
清空表
TRUNCATE TABLE 表名;
示例:
TRUNCATE TABLE student;
作用:
删除所有数据。
特点:
- 保留表结构
- 相当于重新创建表
- 执行速度快
删除字段
ALTER TABLE 表名 DROP 字段名;
示例:
ALTER TABLE student DROP age;
DDL 最核心理解
DDL 操作的是:
数据库结构
不是数据本身。
比如:
- 创建数据库
- 创建表
- 修改字段
- 删除字段
这些都属于:
定义结构
高频面试点
DROP、DELETE、TRUNCATE 区别
DROP
直接删除整个对象。
表没了 结构也没了 数据也没了
DELETE
删除数据。
表还在 结构还在
可以加 WHERE。
TRUNCATE
清空整张表。
表还在 结构还在 数据全没
执行速度比 DELETE 快。
最后总结
| 操作 | 语句 |
|---|---|
| 查询数据库 | SHOW DATABASES |
| 创建数据库 | CREATE DATABASE |
| 删除数据库 | DROP DATABASE |
| 使用数据库 | USE |
| 查询表 | SHOW TABLES |
| 查看表结构 | DESC |
| 查看建表语句 | SHOW CREATE TABLE |
| 创建表 | CREATE TABLE |
| 添加字段 | ALTER TABLE ADD |
| 修改字段 | ALTER TABLE MODIFY |
| 修改字段名 | ALTER TABLE CHANGE |
| 删除字段 | ALTER TABLE DROP |
| 删除表 | DROP TABLE |
| 清空表 | TRUNCATE TABLE |
记忆口诀
CREATE 创建 ALTER 修改 DROP 删除 TRUNCATE 清空 DESC 看结构 SHOW 看信息 USE 切库
到此这篇关于MySQL DDL数据定义语言示例总结的文章就介绍到这了,更多相关MySQL DDL数据定义语言内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
