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 语句,借助它们你能够有效地管理和操作数据库。

相关推荐
看天走路吃雪糕9 分钟前
墨者:SQL手工注入漏洞测试(MySQL数据库)
数据库·mysql·sql注入·墨者靶场
看天走路吃雪糕19 分钟前
墨者:通过手工解决SQL手工注入漏洞测试(PostgreSQL数据库)
数据库·sql·postgresql·sql注入·墨者靶场
看天走路吃雪糕1 小时前
墨者:SQL注入漏洞测试(布尔盲注)
数据库·sql·sqlmap·墨者学院·布尔盲注
*愿风载尘*1 小时前
ksql连接数据库免输入密码交互
数据库·后端
追风少年浪子彦1 小时前
mybatis-plus实体类主键生成策略
java·数据库·spring·mybatis·mybatis-plus
溟洵1 小时前
Qt 窗口 工具栏QToolBar、状态栏StatusBar
开发语言·前端·数据库·c++·后端·qt
problc1 小时前
大模型API和秘钥获取地址
数据库·redis·缓存
Antonio9151 小时前
【Redis】Linux 配置Redis
linux·数据库·redis
qq_463944862 小时前
如何把Excel文件导入Navicat?
数据库·excel
不太厉害的程序员2 小时前
Excel 将数据导入到SQLServer数据库
数据库·sqlserver·excel