当前位置:网站首页>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
边栏推荐
猜你喜欢
Halcon combined with C # to detect surface defects -- Halcon routine autobahn
Today's sleep quality record 77 points
挡不住了,国产芯片再度突进,部分环节已进到4nm
Flutter dynamic | fair 2.5.0 new version features
HALCON联合C#检测表面缺陷——HALCON例程autobahn
Mysql database basic operation - regular expression
Can newly graduated European college students get an offer from a major Internet company in the United States?
[redis] cache warm-up, cache avalanche and cache breakdown
8皇后问题
常见的几种最优化方法Matlab原理和深度分析
随机推荐
PHP maze game
编程内功之编程语言众多的原因
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
PowerPoint tutorial, how to save a presentation as a video in PowerPoint?
Comprehensive evaluation of double chain notes remnote: fast input, PDF reading, interval repetition / memory
MySQL_ JDBC
logback日志的整理
windos 创建cordova 提示 因为在此系统上禁止运行脚本
[how to solve FAT32 when the computer is inserted into the U disk or the memory card display cannot be formatted]
[redis] cache warm-up, cache avalanche and cache breakdown
Detailed explanation of multithreading
Red Hat Satellite 6:更好地管理服务器和云
Anan's doubts
用户和组命令练习
【电脑插入U盘或者内存卡显示无法格式化FAT32如何解决】
Task5: multi type emotion analysis
Ubuntu 14.04 下开启PHP错误提示
The principle of human voice transformer
Disruptor -- a high concurrency and high performance queue framework for processing tens of millions of levels
Realize the recognition and training of CNN images, and process the cifar10 data set and other methods through the tensorflow framework