MySQL DDL数据定义语言示例总结

 更新时间:2026年05月09日 10:11:01   作者:会编程的土豆  
文章主要介绍了数据库定义语言(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数据定义语言内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Ubuntu系统安装mysql超详细步骤

    Ubuntu系统安装mysql超详细步骤

    这篇文章主要给大家介绍了关于Ubuntu系统安装mysql的相关资料,现在的软件越来越好安装,尤其是在ubuntu下安装软件,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-09-09
  • mysql仿asp的数据库操作类

    mysql仿asp的数据库操作类

    本文通过实例代码给大家介绍了mysql仿asp的数据库操作类,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧
    2008-04-04
  • 为什么mysql字段要使用NOT NULL

    为什么mysql字段要使用NOT NULL

    数据库字段一定要设置为 not null,不然会有很大的bug,下面就一起来介绍一下,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • MySQL表空间结构详解表空间到段页操作

    MySQL表空间结构详解表空间到段页操作

    在MySQL架构和存储引擎专题中介绍了使用不同存储引擎创建表时生成的表空间数据文件,在本章节主要介绍使用InnoDB存储引擎创建表时生成的表空间数据文件,对mysql表空间结构及表空间到段页相关知识感兴趣的朋友一起看看吧
    2025-05-05
  • MySQL高效处理ORDER BY与GROUP BY查询的优化策略

    MySQL高效处理ORDER BY与GROUP BY查询的优化策略

    在高并发、大数据量的业务场景中,SQL 查询性能直接影响系统整体响应速度,本文将深入探讨 MySQL 中排序与分组的执行机制,并提供一系列实用的优化策略,希望对大家有所帮助
    2026-02-02
  • Linux下MySQL 5.5.8 源码编译安装记录分享

    Linux下MySQL 5.5.8 源码编译安装记录分享

    Linux下MySQL 5.5.8 源码编译安装记录分享,需要的朋友可以参考下。
    2011-10-10
  • Mysql基础知识点汇总

    Mysql基础知识点汇总

    本文给大家汇总介绍了mysql的23个基础的知识点,这些都是学习mysql的必备知识,小伙伴们可以参考下。
    2015-09-09
  • MySQL中 LBCC 和 MVCC 的理解及常见问题示例

    MySQL中 LBCC 和 MVCC 的理解及常见问题示例

    这篇文章主要介绍了MySQL中LBCC和MVCC的理解及常见问题示例,文章围绕主题展开详细的内容介绍,具有一定的参考价值,感兴趣的朋友可以参考一下
    2022-09-09
  • MySQL系列之九 mysql查询缓存及索引

    MySQL系列之九 mysql查询缓存及索引

    缓存SELECT操作或预处理查询的结果集和SQL语句,当有新的SELECT语句或预处理查询语句请求,先去查询缓存,判断是否存在可用的记录集,判断标准:与缓存的SQL语句,是否完全一样,区分大小写
    2021-07-07
  • MySQL组合索引(多列索引)使用与优化案例详解

    MySQL组合索引(多列索引)使用与优化案例详解

    这篇文章主要介绍了MySQL组合索引(多列索引)使用与优化,主要包括多列索引,测试案例及过程以及多列索引的使用顺序,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2022-07-07

最新评论