DDL(数据定义语言)
- DDL(Data Definition Language),数据定义语言,用来
定义
数据库对象(数据库,表,字段) 。
一、数据库操作
1、 查询mysql数据库管理系统的所有数据库
- 语法:
show databases;
- 示例:
2、查询当前所在的数据库
- 语法:
select database();
- 示例:
3、创建数据库
- 语法:([]括号内的表示是可选的)
create database [ if not exists ] 数据库名 [ default charset 字符集 ] [ collate 排序规则 ] ;
-
不加if not exists的情况:当所创建的数据库已经存在的时候,就会报错了。
-
IF NOT EXISTS 是一个条件子句,用于检查指定的数据库是否已经存在。
- 如果数据库不存在,则执行创建数据库的语句;
- 如果数据库已经存在,则不执行创建操作,并且不会返回错误。
-
这个子句作用:因为它可以防止因尝试创建已经存在的数据库而导致的错误。这在自动化脚本或应用程序中尤其重要,因为它们可能需要多次运行,并且不应该因为数据库已经存在而失败。
-
加上if not exists(一般都会加上的)
- 示例:
-- 创建一个company数据库, 使用数据库默认的字符集。
CREATE DATABASE company;
-- 如果company数据库不存在,则创建company数据库,如果存在则不创建
CREATE DATABASE IF NOT exists company;
-- 创建数据库company并指定字符集utf8mb4
CREATE DATABASE company DEFAULT CHARSET utf8mb4;
-- 创建数据库时company指定字符集utf8mb4并指定排序规则为utf8mb4_general_ci
CREATE DATABASE company DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_general_ci;
- 在创建数据库时,排序规则(COLLATE)是用于定义字符串比较和排序的规则。这些规则决定了文本数据如何进行排序和比较,包括是否区分大小写、是否区分重音等。
- 排序规则(Collation)由字符集和排序规则名称组成,格式为 charset_collation。例如,utf8mb4_general_ci 是一个常见的排序规则,其中 utf8mb4 是字符集,general_ci 是排序规则名称,ci 表示不区分大小写(case-insensitive)。
- 排序:排序规则决定了字符串的排序方式。在 ORDER BY 语句中使用排序规则可以确保字符串按照预期的顺序进行排序。
- 比较:排序规则影响字符串比较操作,如 =、!=、>、< 等。选择合适的排序规则可以确保字符串比较的结果符合语言规则或业务需求。
- 排序规则(Collation)由字符集和排序规则名称组成,格式为 charset_collation。例如,utf8mb4_general_ci 是一个常见的排序规则,其中 utf8mb4 是字符集,general_ci 是排序规则名称,ci 表示不区分大小写(case-insensitive)。
4、删除数据库
- 语法:
drop database [ if exists ] 数据库名 ;
-
if exists是一个条件子句,判断当前数据库是否存在该数据库:
- 数据库存在则执行sql,删除数据库
- 当数据库不存在时,SQL 语句不会执行删除操作,而是直接忽略该语句,且不返回错误<