您现在的位置是:首页 > 编程 > 

MySql基础之DML

2025-07-21 06:28:32
MySql基础之DML 1、插入数据 方式1:VALUES的方式添加为表的所有字段按默认顺序插入数据代码语言:javascript代码运行次数:0运行复制ISERT ITO 表名 VALUES (value1,value2,....);举例:代码语言:javascript代码运行次数:0运行复制ISERT ITO departments VALUES (70, 'Pub&#x

MySql基础之DML

1、插入数据

方式1:VALUES的方式添加

  1. 为表的所有字段按默认顺序插入数据
代码语言:javascript代码运行次数:0运行复制
ISERT ITO 表名 
VALUES (value1,value2,....);

举例:

代码语言:javascript代码运行次数:0运行复制
ISERT ITO departments 
VALUES (70, 'Pub', 100, 1700);

值列表中需要为表的每一个字段指定值,并且值的顺序必须和数据表中字段定义时的顺序相同。

  1. 为表的指定字段插入数据
代码语言:javascript代码运行次数:0运行复制
ISERT ITO 表名(column1 [, column2, …, columnn]) 
VALUES (value1 [,value2, …, valuen]);

举例:

代码语言:javascript代码运行次数:0运行复制
ISERT ITO departments(department_id, department_name) 
VALUES (80, 'IT');
  1. 同时插入多条记录
代码语言:javascript代码运行次数:0运行复制
ISERT ITO table_name 
VALUES 
(value1 [,value2, …, valuen]), 
(value1 [,value2, …, valuen]), 
……
(value1 [,value2, …, valuen]);

或者

代码语言:javascript代码运行次数:0运行复制
ISERT ITO table_name(column1 [, column2, …, columnn]) 
VALUES 
(value1 [,value2, …, valuen]), 
(value1 [,value2, …, valuen]), 
……
(value1 [,value2, …, valuen]);

举例:

代码语言:javascript代码运行次数:0运行复制
ISERT ITO emp(emp_id,emp_name)
VALUES 
(1001,'shkstart'),
(1002,'atguigu'),
(100,'Tom');

小结:

  • VALUES 也可以写成 VALUE ,但是VALUES是标准写法。
  • 字符和日期型数据应包含在单引号中。

方式2:将查询结果插入到表中

基本语法格式如下:

代码语言:javascript代码运行次数:0运行复制
ISERT ITO 目标表名 
(tar_column1 [, tar_column2, …, tar_columnn]) 
SELECT 
(src_column1 [, src_column2, …, src_columnn]) 
FROM 源表名 [WHERE condition]

举例:

代码语言:javascript代码运行次数:0运行复制
ISERT ITO emp2 
SELECT * 
FROM employees 
WHERE department_id = 90;
代码语言:javascript代码运行次数:0运行复制
ISERT ITO sales_reps(id, name, salary, commission_pct) 
SELECT employee_id, last_name, salary, commission_pct 
FROM employees 
WHERE job_id LIKE '%REP%';
2、更新数据

语法如下:

代码语言:javascript代码运行次数:0运行复制
UPDATE table_name 
SET column1=value1, column2=value2, … , column=valuen 
[WHERE condition]
  • 可以一次更新多条数据。
  • 如果需要回滚数据,需要保证在DML前,进行设置:SET AUTOCOMMIT = FALSE;

举例:

代码语言:javascript代码运行次数:0运行复制
UPDATE employees 
SET department_id = 70 
WHERE employee_id = 11;
、删除数据

基本语法:

代码语言:javascript代码运行次数:0运行复制
DELETE FROM table_name [WHERE <condition>];

举例:

代码语言:javascript代码运行次数:0运行复制
DELETE FROM departments 
WHERE department_name = 'Finance';
4、MySQL8新特性:计算列

什么叫计算列呢?简单来说就是某一列的值是通过别的列计算得来的。例如,a列值为1、b列值为2,c列 不需要手动插入,定义a+b的结果为c的值,那么c就是计算列,是通过别的列计算得来的。

在MySQL 8.0中,CREATE TABLE 和 ALTER TABLE 中都支持增加计算列。下面以CREATE TABLE为例进行讲 解。 举例:定义数据表tb1,然后定义字段id、字段a、字段b和字段c,其中字段c为计算列,用于计算a+b的 值。 首先创建测试表tb1,语句如下:

代码语言:javascript代码运行次数:0运行复制
CREATE TABLE tb1( 
id IT, 
a IT, 
b IT, 
c IT GEERATED ALWAYS AS (a + b) VIRTUAL 
);

演示:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2022-12-11,如有侵权请联系 cloudcommunity@tencent 删除crudmysql基础数据语法

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/biancheng/1162465.html

相关标签:无
上传时间: 2025-07-20 19:32:56
留言与评论(共有 12 条评论)
本站网友 中国电力投资集团公司
5分钟前 发表
本站网友 鹿精培元胶囊
18分钟前 发表
如有侵权请联系 cloudcommunity@tencent 删除前往查看crudmysql基础数据语法
本站网友 gol
16分钟前 发表
(value1 [
本站网友 风声酷刑
29分钟前 发表
value2
本站网友 楼主好人
11分钟前 发表
本站网友 怎样减肥有效
18分钟前 发表
本站网友 知耻后勇
30分钟前 发表
a列值为1
本站网友 济南订餐
6分钟前 发表
其中字段c为计算列
本站网友 在线漫画下载器
26分钟前 发表
c IT GEERATED ALWAYS AS (a + b) VIRTUAL );演示:本文参与 腾讯云自媒体同步曝光计划
本站网友 鸡内金是什么
27分钟前 发表
src_column2
本站网友 linux论坛
7分钟前 发表
value2