当前位置:网站首页>MySQL 数据处理值增删改
MySQL 数据处理值增删改
2022-07-03 13:17:00 【陈弋辛】
目录
6. 将3号员工的last_name修改为“drelxer”
8. 将userid为Bbiri的user表和my_employees表的记录全部删除
0.准备工作
数据文件:mysql查询sql文件-数据集文档类资源-CSDN文库
1. 插入数据
1.1 方式1:VALUES的方式添加
使用这种语法一次只能向表中插入一条数据。1.1.1 情况1:为表的所有字段按默认顺序插入数据
语法格式:
INSERT INTO 表名VALUES (value1,value2,....);值列表中需要为表的每一个字段指定值,并且值的顺序必须和数据表中字段定义时的顺序相同。
1.1.2 情况2:为表的指定字段插入数据
语法格式:
INSERT INTO 表名(column1 [, column2, …, columnn])VALUES (value1 [,value2, …, valuen]);为表的指定字段插入数据,就是在INSERT语句中只向部分字段中插入值,而其他字段的值为表定义时的默认值。
1.1.3 情况3:同时插入多条记录
INSERT语句可以同时向数据表中插入多条记录,插入时指定多个值列表,每个值列表之间用逗号分隔开。语法格式:
INSERT INTO table_nameVALUES(value1 [,value2, …, valuen]),(value1 [,value2, …, valuen]),……(value1 [,value2, …, valuen]);或
INSERT INTO table_name(column1 [, column2, …, columnn])VALUES(value1 [,value2, …, valuen]),(value1 [,value2, …, valuen]),……(value1 [,value2, …, valuen]);
说明:
1.使用INSERT同时插入多条记录时,MySQL会返回一些在执行单行插入时没有的额外信息,这些信息的含 义如下: ● Records:表明插入的记录条数。 ● Duplicates:表明插入时被忽略的记录,原因可能是这 些记录包含了重复的主键值。 ● Warnings:表明有问题的数据值,例如发生数据类型转换。
2.一个同时插入多行记录的INSERT语句等同于多个单行插入的INSERT语句,但是多行的INSERT语句 在处理过程中 效率更高 。因为MySQL执行单条INSERT语句插入多行数据比使用多条INSERT语句 快,所以在插入多条记录时最好选择使用单条INSERT语句的方式插入。
1.1.4 小结:
1. VALUES 也可以写成 VALUE ,但是VALUES是标准写法。2. 字符和日期型数据应包含在单引号中。1.2 方式2:将查询结果插入到表中
INSERT还可以将SELECT语句查询的结果插入到表中,此时不需要把每一条记录的值一个一个输入,只需 要使用一条INSERT语句和一条SELECT语句组成的组合语句即可快速地从一个或多个表中向一个表中插入 多行。语法格式:INSERT INTO 目标表名(tar_column1 [, tar_column2, …, tar_columnn])SELECT(src_column1 [, src_column2, …, src_columnn])FROM 源表名[WHERE condition]说明:1.在 INSERT 语句中加入子查询。2.不必书写 VALUES 子句。3.子查询中的值列表应与 INSERT 子句中的列名对应。
注意:
1.查询字段的数据类型必须要与添加到的表的字段的数据类型一一对应
2.添加到的表的字段的长度不能低于查询字段,否则存在添加不成功的风险。
2. 更新数据
使用 UPDATE 语句更新数据。语法如下:
UPDATE table_nameSET column1=value1, column2=value2, … , column=valuen[WHERE condition]可以一次更新多条数据。如果需要回滚数据,需要保证在DML前,进行设置:SET AUTOCOMMIT = FALSE;
注:在添加、修改或删除数据时,是可能存在不成功的。(可能时由于约束的影响)
3. 删除数据
使用 DELETE 语句从表中删除数据,语法格式如下:DELETE FROM table_name[WHERE <condition>];table_name指定要执行删除操作的表;“[WHERE ]”为可选参数,指定删除条件,如果没有WHERE子句, DELETE语句将删除表中的所有记录。注:在添加、修改或删除数据时,是可能存在不成功的。(可能时由于约束的影响)
4.小结
1.DML操作在默认情况下,执行完以后都会自动提交数据,如果希望执行完以后,不自动提交数据,则需要使用SET autocommit = FALSE;
2.在添加、修改或删除数据时,是可能存在不成功的。(可能时由于约束的影响)3.基本语法:添加:方式1:INSERT INTO 表名VALUES (value1,value2,....);方式2:INSERT INTO 目标表名 (tar_column1 [, tar_column2, …, tar_columnn])SELECT (src_column1 [, src_column2, …, src_columnn])FROM 源表名[WHERE condition]更新(修改):UPDATE table_nameSET column1=value1, column2=value2, … , column=valuen[WHERE condition]删除:DELETE FROM table_name[WHERE <condition>];5.mysql8.0新特性:计算列
什么叫计算列呢?简单来说就是某一列的值是通过别的列计算得来的。例如,a列值为1、b列值为2,c列 不需要手动插入,定义a+b的结果为c的值,那么c就是计算列,是通过别的列计算得来的。在MySQL 8.0中,CREATE TABLE 和 ALTER TABLE 中都支持增加计算列。下面以CREATE TABLE为例进行讲解。
6.练习
1. 创建数据库dbtest11
CREATE DATABASE IF NOT EXISTS dbtest11 CHARACTER SET 'utf8';2. 运行以下脚本创建表my_employees
USE dbtest11;CREATE TABLE my_employees(id INT(10),first_name VARCHAR(10),last_name VARCHAR(10),userid VARCHAR(10),salary DOUBLE(10,2));CREATE TABLE users(id INT,userid VARCHAR(10),department_id INT);3. 显示表my_employees的结构
4. 向my_employees表中插入下列数据
5. 向users表中插入数据
1 Rpatel 102 Bdancs 103 Bbiri 204 Cnewman 305 Aropebur 40
6. 将3号员工的last_name修改为“drelxer”
7. 将所有工资少于900的员工的工资修改为1000
8. 将userid为Bbiri的user表和my_employees表的记录全部删除
9. 删除my_employees、users表所有数据
10. 检查所作的修正
11. 清空表my_employees
边栏推荐
- 刚毕业的欧洲大学生,就能拿到美国互联网大厂 Offer?
- NFT新的契机,多媒体NFT聚合平台OKALEIDO即将上线
- Task5: multi type emotion analysis
- 8皇后问题
- R language uses the data function to obtain the sample datasets available in the current R environment: obtain all the sample datasets in the datasets package, obtain the datasets of all packages, and
- IBEM mathematical formula detection data set
- 顺序表(C语言实现)
- KEIL5出现中文字体乱码的解决方法
- 双链笔记 RemNote 综合评测:快速输入、PDF 阅读、间隔重复/记忆
- MySQL installation, uninstallation, initial password setting and general commands of Linux
猜你喜欢

Logseq 评测:优点、缺点、评价、学习教程

106. How to improve the readability of SAP ui5 application routing URL

mysql更新时条件为一查询

KEIL5出现中文字体乱码的解决方法

SQL Injection (POST/Search)

HALCON联合C#检测表面缺陷——HALCON例程autobahn

Universal dividend source code, supports the dividend of any B on the BSC

The solution of Chinese font garbled code in keil5

Multi table query of MySQL - multi table relationship and related exercises

Logseq evaluation: advantages, disadvantages, evaluation, learning tutorial
随机推荐
Libuv Library - Design Overview (Chinese version)
常见的几种最优化方法Matlab原理和深度分析
Comprehensively develop the main channel of digital economy and digital group, and actively promote the utonmos digital Tibet market
Flutter dynamic | fair 2.5.0 new version features
The network card fails to start after the cold migration of the server hard disk
Kivy tutorial how to load kV file design interface by string (tutorial includes source code)
Mastering the cypress command line options is the basis for truly mastering cypress
记录关于银行回调post请求405 问题
CVPR 2022 | 美团技术团队精选6篇优秀论文解读
Comprehensive evaluation of double chain notes remnote: fast input, PDF reading, interval repetition / memory
服务器硬盘冷迁移后网卡无法启动问题
The shadow of the object at the edge of the untiy world flickers, and the shadow of the object near the far point is normal
json序列化时案例总结
【556. 下一个更大元素 III】
全面发展数字经济主航道 和数集团积极推动UTONMOS数藏市场
Which securities company has the lowest Commission for opening an account online? I want to open an account. Is it safe for the online account manager to open an account
用户和组命令练习
Students who do not understand the code can also send their own token, which is easy to learn BSC
MySQL installation, uninstallation, initial password setting and general commands of Linux
IBEM 数学公式检测数据集
























