mariaDB中常见的DDL,DML,DQL语句

在 MariaDB 里,DDL(数据定义语言)、DML(数据操作语言)和 DQL(数据查询语言)是用于管理和操作数据库的重要工具,以下为你介绍它们常见的语句:

DDL(数据定义语言)

DDL 语句主要用于创建、修改和删除数据库对象,像数据库、表、视图等。

1. 创建数据库
sql 复制代码
CREATE DATABASE IF NOT EXISTS mydatabase;

IF NOT EXISTS 是可选的,其作用是避免在数据库已存在时产生错误。

2. 删除数据库
sql 复制代码
DROP DATABASE IF EXISTS mydatabase;

IF EXISTS 可防止在数据库不存在时出错。

3. 创建表
sql 复制代码
CREATE TABLE IF NOT EXISTS employees (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100) NOT NULL,
    age INT,
    department VARCHAR(50)
);

此语句创建了一个名为 employees 的表,包含 idnameagedepartment 字段。

4. 修改表结构

添加字段:

sql 复制代码
ALTER TABLE employees ADD COLUMN salary DECIMAL(10, 2);

修改字段类型:

sql 复制代码
ALTER TABLE employees MODIFY COLUMN age SMALLINT;

删除字段:

sql 复制代码
ALTER TABLE employees DROP COLUMN department;
5. 删除表
sql 复制代码
DROP TABLE IF EXISTS employees;

DML(数据操作语言)

DML 语句用于对数据库中的数据进行插入、更新和删除操作。

1. 插入数据
sql 复制代码
INSERT INTO employees (name, age, salary) VALUES ('John Doe', 30, 5000.00);

可以一次插入多条记录:

sql 复制代码
INSERT INTO employees (name, age, salary) VALUES 
('Jane Smith', 25, 4500.00),
('Bob Johnson', 35, 5500.00);
2. 更新数据
sql 复制代码
UPDATE employees SET salary = 5200.00 WHERE name = 'John Doe';

此语句把 nameJohn Doe 的员工的 salary 更新为 5200.00

3. 删除数据
sql 复制代码
DELETE FROM employees WHERE age > 35;

该语句会删除 age 大于 35 的所有员工记录。

DQL(数据查询语言)

DQL 语句主要用于从数据库中查询数据。

1. 查询所有记录
sql 复制代码
SELECT * FROM employees;

此语句会返回 employees 表中的所有记录和字段。

2. 查询指定字段
sql 复制代码
SELECT name, age FROM employees;

该语句仅返回 nameage 字段。

3. 条件查询
sql 复制代码
SELECT * FROM employees WHERE department = 'HR';

此语句返回 departmentHR 的所有记录。

4. 排序查询
sql 复制代码
SELECT * FROM employees ORDER BY age DESC;

该语句按照 age 字段降序排列结果。

5. 分页查询
sql 复制代码
SELECT * FROM employees LIMIT 10 OFFSET 20;

此语句从第 21 条记录开始返回 10 条记录。

这些是 MariaDB 中常见的 DDL、DML 和 DQL 语句,借助它们你能够有效地管理和操作数据库。

相关推荐
AC赳赳老秦10 小时前
OpenClaw + 云数据库运维:自动备份、扩容、迁移 RDS/MySQL 云数据库
运维·开发语言·数据库·人工智能·python·mysql·openclaw
TDengine (老段)10 小时前
TDengine 物理计划生成 — 算子下沉、Exchange 与 Subplan 切分
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
swordbob10 小时前
MYSQL RR 解决“脏读+不可重复读“和“幻读“的本质区别
数据库·mysql
IvorySQL10 小时前
PostgreSQL 全球对话:开源链接世界,共建共治共享
数据库·postgresql·开源
Nontee10 小时前
新手数据库进阶:大白话图解四大隔离级别与底层机制
数据库·oracle
dishugj10 小时前
【YashanDB 认证】我的崖山数据库初体验:从陌生到上手的成长之路
数据库
前端 贾公子10 小时前
Claude Code 的 skills 源码解析 (上)
数据库·人工智能
吠品11 小时前
.NET 8 单文件发布:把 exe 和一堆 dll 打进一个文件里
服务器·数据库·windows
cmes_love11 小时前
期货五档tick数据下载教程期权五档高频历史数据以及分钟量化回测下载
数据库
蚂蚁数据AntData11 小时前
从ChatBI到业务记忆:重新定义数据智能的生产力边界
大数据·网络·数据库·人工智能·算法