Mysql操作DML
发布人:shili8
发布时间:2025-01-26 04:57
阅读次数:0
**MySQL DML 操作**
DML(Data Manipulation Language)是用于对数据库中的数据进行增、删、改等操作的命令。MySQL 是一种流行的关系型数据库管理系统,支持 DML 操作。
###1. 插入数据(INSERT)
插入新记录到表中,可以使用 `INSERT` 命令。
**示例:**
sql-- 创建一个名为"users"的表CREATE TABLE users ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), email VARCHAR(255) ); -- 插入一条记录INSERT INTO users (name, email) VALUES ('John Doe', 'john@example.com');
**注释:**
* `CREATE TABLE` 命令用于创建一个新表。
* `INSERT INTO` 命令用于插入新记录到指定的表中。
* `VALUES` 子句用于指定要插入的值。
###2. 更新数据(UPDATE)
更新已有的记录,可以使用 `UPDATE` 命令。
**示例:**
sql-- 更新一条记录UPDATE users SET name = 'Jane Doe' WHERE id =1;
**注释:**
* `UPDATE` 命令用于更新已有的记录。
* `SET` 子句用于指定要更新的列和新值。
* `WHERE` 子句用于指定要更新的记录。
###3. 删除数据(DELETE)
删除一条或多条记录,可以使用 `DELETE` 命令。
**示例:**
sql-- 删除一条记录DELETE FROM users WHERE id =1; -- 删除所有记录DELETE FROM users;
**注释:**
* `DELETE` 命令用于删除一条或多条记录。
* `FROM` 子句用于指定要删除的表。
* `WHERE` 子句用于指定要删除的记录。
###4. 插入多条数据(INSERT INTO ... SELECT)
插入多条数据,可以使用 `INSERT INTO ... SELECT` 命令。
**示例:**
sql-- 创建两个名为"users"和"orders"的表CREATE TABLE users ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), email VARCHAR(255) ); CREATE TABLE orders ( id INT PRIMARY KEY AUTO_INCREMENT, user_id INT, order_date DATE); -- 插入多条数据INSERT INTO orders (user_id, order_date) SELECT id, '2022-01-01' FROM users;
**注释:**
* `INSERT INTO ... SELECT` 命令用于插入多条数据。
* `SELECT` 子句用于指定要插入的值。
###5. 更新多条数据(UPDATE ... JOIN)
更新多条数据,可以使用 `UPDATE ... JOIN` 命令。
**示例:**
sql-- 创建两个名为"users"和"orders"的表CREATE TABLE users ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), email VARCHAR(255) ); CREATE TABLE orders ( id INT PRIMARY KEY AUTO_INCREMENT, user_id INT, order_date DATE); -- 更新多条数据UPDATE users u JOIN orders o ON u.id = o.user_id SET u.name = 'Jane Doe' WHERE o.order_date = '2022-01-01';
**注释:**
* `UPDATE ... JOIN` 命令用于更新多条数据。
* `JOIN` 子句用于指定要更新的表和条件。
###6. 删除多条数据(DELETE FROM ... JOIN)
删除多条数据,可以使用 `DELETE FROM ... JOIN` 命令。
**示例:**
sql-- 创建两个名为"users"和"orders"的表CREATE TABLE users ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), email VARCHAR(255) ); CREATE TABLE orders ( id INT PRIMARY KEY AUTO_INCREMENT, user_id INT, order_date DATE); -- 删除多条数据DELETE FROM users u JOIN orders o ON u.id = o.user_id WHERE o.order_date = '2022-01-01';
**注释:**
* `DELETE FROM ... JOIN` 命令用于删除多条数据。
* `JOIN` 子句用于指定要删除的表和条件。
以上是 MySQL DML 操作的基本命令和示例。这些命令可以帮助您对数据库中的数据进行增、删、改等操作。