📜  DML完整格式(1)

📅  最后修改于: 2023-12-03 15:14:45.159000             🧑  作者: Mango

DML完整格式

DML是数据库管理语言(Data Manipulation Language)的简称,是用于操作数据库中数据的语言。它是SQL语言的一部分,可以用于增加、删除、修改、查询等操作。DML常常用于实现业务逻辑,通过对数据进行操作来满足用户要求。

本文将介绍DML的完整格式,包括语法和示例。

1. DML语法

以下是DML语法的基本格式:

[WITH [RECURSIVE] cte_name [(column_name [, ...])] 
AS (
    SELECT ... FROM ...
)], 
statement

statement:
    INSERT INTO table_name [(column1 [, column2, ..., columnn])]
    {VALUES (value1 [, value2, ..., valuen]) | statement}
    [{RETURNING | OUTPUT} * | output_expression [ [, ...] ] ];

    UPDATE table_name
    SET column1 = expression1 [, column2 = expression2, ..., columnn = expressionn]
    [FROM from_list]
    WHERE condition
    [{RETURNING | OUTPUT} * | output_expression [ [, ...] ] ];

    DELETE FROM table_name
    [FROM from_list]
    [WHERE condition]
    [{RETURNING | OUTPUT} * | output_expression [ [, ...] ] ];

output_expression:
    expression [AS output_name]

from_list:
    { ONLY table_name [AS alias] | from_list join_type JOIN table_name [AS alias] [JOIN CONDITIONS] } [WHERE condition]
2. DML示例
INSERT语句

以下是向表“users”中插入一行记录的示例:

INSERT INTO users (name, age, gender) VALUES ('Alice', 20, 'Female') RETURNING *;

这个示例中,我们向“users”表中插入一条新记录,其中包含name、age和gender三个字段的值。RETURNING关键字表示返回新插入记录的所有字段。经过执行后,将返回包含新插入记录的所有字段的行。

UPDATE语句

以下是更新表“users”中指定记录的示例:

UPDATE users SET name = 'Bob', age = 25 WHERE id = 1 RETURNING *;

这个示例中,我们使用UPDATE语句将“users”表中id为1的记录的name字段修改为“Bob”,age字段修改为25。RETURNING关键字表示返回更新后的记录的所有字段。经过执行后,将返回包含更新后记录的所有字段的行。

DELETE语句

以下是从表“users”中删除指定记录的示例:

DELETE FROM users WHERE id = 2 RETURNING *;

这个示例中,我们使用DELETE语句从“users”表中删除id为2的记录。RETURNING关键字表示返回被删除记录的所有字段。经过执行后,将返回包含被删除记录的所有字段的行。

WITH语句

以下是使用WITH语句向表“users”中插入多个记录的示例:

WITH new_users (name, age, gender) AS (
    VALUES ('Charlie', 30, 'Male'),
           ('David', 35, 'Male')
) 
INSERT INTO users (name, age, gender)
SELECT name, age, gender FROM new_users;

这个示例中,我们使用WITH语句创建了一个名为new_users的公共表达式,其中包含多个记录。然后,我们使用INSERT INTO和SELECT子句将new_users中的数据插入到“users”表中。经过执行后,“users”表中将包含两个新记录。

3. 总结

本文介绍了DML的完整格式,包括语法和示例。DML是SQL语言的一部分,用于操作数据库中的数据。通过本文的介绍,相信读者对DML有了更加深入的理解,能够更高效地进行数据库开发。