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数据定义语言内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 关于useSSL=false和true的区别及说明

    关于useSSL=false和true的区别及说明

    这篇文章主要介绍了关于useSSL=false和true的区别及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • 忘记MySQL的root密码该怎么办

    忘记MySQL的root密码该怎么办

    忘记密码总是一件令人头疼的事情,当我们忘记了MySQL的root密码该怎么办?本文给出解决方法,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • mysql去重查询的三种方法小结

    mysql去重查询的三种方法小结

    本文主要介绍了mysql去重查询的三种方法小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • MAC下MYSQL数据库密码忘记的解决办法

    MAC下MYSQL数据库密码忘记的解决办法

    这篇文章主要介绍了Mac操作系统下MYSQL数据库密码忘记的快速解决办法,教大家重置MYSQ密码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-11-11
  • MySQL中is null和=null的区别及说明

    MySQL中is null和=null的区别及说明

    这篇文章主要介绍了MySQL中is null和=null的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • MySQL中REPLACE INTO和INSERT INTO的区别分析

    MySQL中REPLACE INTO和INSERT INTO的区别分析

    REPLACE的运行与INSERT很相似。只有一点例外,假如表中的一个旧记录与一个用于PRIMARY KEY或一个UNIQUE索引的新记录具有相同的值,则在新记录被插入之前,旧记录被删除。
    2011-07-07
  • MySQL group by语句如何优化

    MySQL group by语句如何优化

    这篇文章主要介绍了MySQL group by语句如何优化,帮助大家更好的理解和使用MySQL数据库,感兴趣的朋友可以了解下
    2020-11-11
  • 如何修改mysql数据表主键

    如何修改mysql数据表主键

    这篇文章主要介绍了如何修改mysql数据表主键问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • MySql实现分布式锁的示例代码

    MySql实现分布式锁的示例代码

    本文主要介绍了使用MySQL实现分布式锁,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-12-12
  • MySQL删除数据后自增主键ID不连贯问题及解决

    MySQL删除数据后自增主键ID不连贯问题及解决

    这篇文章主要介绍了MySQL删除数据后自增主键ID不连贯问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-09-09

最新评论