iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MySQL:数据的增删改查
  • 246
分享到

MySQL:数据的增删改查

mysqlandroidadb 2023-08-17 11:08:49 246人浏览 薄情痞子
摘要

数据的增删改查 前言一、插入数据1、实际问题2、方式1:VALUES的方式添加3、方式2:将查询结果插入到表中 二、删除数据三、更新数据四、查询数据五、MySQL8新特性:计算列 前言 本博主将用CSDN记录软件开发求学



前言

本博主将用CSDN记录软件开发求学之路上亲身所得与所学的心得与知识,有兴趣的小伙伴可以关注博主!
也许一个人独行,可以走的很快,但是一群人结伴而行,才能走的更远!

一、插入数据

1、实际问题

在这里插入图片描述

解决方式:使用 INSERT 语句向表中插入数据。

2、方式1:VALUES的方式添加

使用这种语法一次只能向表中插入一条数据。

情况1:为表的所有字段按默认顺序插入数据

INSERT INTO 表名VALUES (value1,value2,....);

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

举例:

INSERT INTO departmentsVALUES (70, 'Pub', 100, 1700);
INSERT INTOdepartmentsVALUES(100, 'Finance', NULL, NULL);

情况2:为表的指定字段插入数据

INSERT INTO 表名(column1 [, column2, …, columnn]) VALUES (value1 [,value2, …, valuen]);

为表的指定字段插入数据,就是在INSERT语句中只向部分字段中插入值,而其他字段的值为表定义时的默认值。

在 INSERT 子句中随意列出列名,但是一旦列出,VALUES中要插入的value1,…valuen需要与column1,…columnn列一一对应。如果类型不同,将无法插入,并且Mysql会产生错误。

举例:

INSERT INTO departments(department_id, department_name)VALUES (80, 'IT');

情况3:同时插入多条记录
INSERT语句可以同时向数据表中插入多条记录,插入时指定多个值列表,每个值列表之间用逗号分隔开,基本语法格式如下:

INSERT INTO table_name VALUES (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]);

举例:

mysql> INSERT INTO emp(emp_id,emp_name)    -> VALUES (1001,'shkstart'),    -> (1002,'atguigu'),    -> (1003,'Tom');Query OK, 3 rows affected (0.00 sec)Records: 3  Duplicates: 0  Warnings: 0

使用INSERT同时插入多条记录时,mysql会返回一些在执行单行插入时没有的额外信息,这些信息的含义如下:

  1. Records:表明插入的记录条数。
  2. Duplicates:表明插入时被忽略的记录,原因可能是这些记录包含了重复的主键值。
  3. Warnings:表明有问题的数据值,例如发生数据类型转换。

一个同时插入多行记录的INSERT语句等同于多个单行插入的INSERT语句,但是多行的INSERT语句在处理过程中效率更高。因为Mysql执行单条INSERT语句插入多行数据比使用多条INSERT语句快,所以在插入多条记录时最好选择使用单条INSERT语句的方式插入。

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

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

INSERT还可以将SELECT语句查询的结果插入到表中,此时不需要把每一条记录的值一个一个输入,只需要使用一条INSERT语句和一条SELECT语句组成的组合语句即可快速地从一个或多个表中向一个表中插入多行。

基本语法格式如下:

INSERT INTO 目标表名(tar_column1 [, tar_column2, …, tar_columnn])SELECT(src_column1 [, src_column2, …, src_columnn])FROM 源表名[WHERE condition]

• 在 INSERT 语句中加入子查询。
• 不必书写 VALUES 子句。
• 子查询中的值列表应与 INSERT 子句中的列名对应。
举例:

INSERT INTO emp2 SELECT * FROM employeesWHERE department_id = 90;
INSERT INTO sales_reps(id, name, salary, commission_pct)SELECT employee_id, last_name, salary, commission_pctFROM   employeesWHERE  job_id LIKE '%REP%';

二、删除数据

在这里插入图片描述

• 使用 DELETE 语句从表中删除数据
在这里插入图片描述

DELETE FROM table_name [WHERE ];

table_name指定要执行删除操作的表;“[WHERE ]”为可选参数,指定删除条件,如果没有WHERE子句,DELETE语句将删除表中的所有记录。
• 使用 WHERE 子句删除指定的记录。

DELETE FROM departmentsWHERE  department_name = 'Finance';

• 如果省略 WHERE 子句,则表中的全部数据将被删除

DELETE FROM  copy_emp;

• 删除中的数据完整性错误

DELETE FROM departmentsWHERE       department_id = 60;

在这里插入图片描述

说明:You cannot delete a row that contains a primary key that is used as a foreign key in another table.

三、更新数据

在这里插入图片描述

• 使用 UPDATE 语句更新数据。语法如下:

UPDATE table_nameSET column1=value1, column2=value2, … , column=valuen[WHERE condition]

• 可以一次更新多条数据。
• 如果需要回滚数据,需要保证在DML前,进行设置:SET AUTOCOMMIT = FALSE;
• 使用 WHERE 子句指定需要更新的数据。

UPDATE employeesSET    department_id = 70WHERE  employee_id = 113;

• 如果省略 WHERE 子句,则表中的所有数据都将被更新。

UPDATE copy_empSET    department_id = 110;

• 更新中的数据完整性错误

UPDATE employeesSET    department_id = 55WHERE  department_id = 110;

在这里插入图片描述

说明:不存在 55 号部门

四、查询数据

MySQL 数据库使用SQL SELECT语句来查询数据。

语法:
以下为在MySQL数据库中查询数据通用的 SELECT 语法:

SELECT column_name,column_nameFROM table_name[WHERE Clause][LIMIT N][ OFFSET M]
  1. 查询语句中你可以使用一个或者多个表,表之间使用逗号(,)分割,并使用WHERE语句来设定查询条件。
  2. SELECT 命令可以读取一条或者多条记录。
  3. 你可以使用星号(*)来代替其他字段,SELECT语句会返回表的所有字段数据
  4. 你可以使用 WHERE 语句来包含任何条件。
  5. 你可以使用 LIMIT 属性来设定返回的记录数。
  6. 你可以通过OFFSET指定SELECT语句开始查询的数据偏移量。默认情况下偏移量为0。

五、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,语句如下:

CREATE TABLE tb1(id INT,a INT,b INT,c INT GENERATED ALWAYS AS (a + b) VIRTUAL);

插入演示数据,语句如下:

INSERT INTO tb1(a,b) VALUES (100,200);

查询数据表tb1中的数据,结果如下:

mysql> SELECT * FROM tb1;+------+------+------+------+| id   | a    | b    | c    |+------+------+------+------+| NULL |  100 |  200 |  300 |+------+------+------+------+1 row in set (0.00 sec)

更新数据中的数据,语句如下:

mysql> UPDATE tb1 SET a = 500;Query OK, 0 rows affected (0.00 sec)Rows matched: 1  Changed: 0  Warnings: 0

来源地址:https://blog.csdn.net/weixin_52533007/article/details/131587152

您可能感兴趣的文档:

--结束END--

本文标题: MySQL:数据的增删改查

本文链接: https://www.lsjlt.com/news/372698.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL:数据的增删改查
    数据的增删改查 前言一、插入数据1、实际问题2、方式1:VALUES的方式添加3、方式2:将查询结果插入到表中 二、删除数据三、更新数据四、查询数据五、MySQL8新特性:计算列 前言 本博主将用CSDN记录软件开发求学...
    99+
    2023-08-17
    mysql android adb
  • Mysql 数据库增删改查
    MySQL是目前最流行的关系型数据库。以下是MySQL数据库的增删改查操作。 1.数据库连接 在进行增删改查操作之前,需要先连接MySQL数据库。使用以下命令进行连接: import mysql.connectormydb = mysql....
    99+
    2023-08-31
    数据库 mysql oracle
  • 【MySql】数据库的CRUD(增删查改)
    写在最前面的话         哈喽,宝子们,今天给大家带来的是MySql数据库的CRUD(增删改查),CRUD是数据库非常基础的部分,也是后端开发日常工作中最主要的一项工作,接下来让我们一起进入学习吧,感谢大家的支持!喜欢的话可以三连...
    99+
    2023-09-08
    数据库 mysql sql
  • mysql-数据的增删改
    插入数据: insert更新数据: update删除数据: delete一、 在MySQL管理软件中,可以通过SQL语句中的DML语言来实现数据的操作,包括1.使用INSERT实现数据的插入2.UPDATE实现数 据的更新3.使用...
    99+
    2023-01-30
    数据 mysql
  • MySQL——数据的增删改
    2023.9.12         本章开始学习DML (数据操纵语言) 语言。相关学习笔记如下: #DML语言#一、插入语句#方式一:经典的插入SELECT * FROM beauty;#1.插入的值的类型要与列的类型一致或兼容I...
    99+
    2023-09-29
    mysql 数据库
  • MySQL增删查改数据表详解
    目录前言一、新增数据二、查询数据全列查询指定列查询表达式查询指定别名查询去重查询排序查询条件查询分页查询三、修改数据四、删除数据前言 CRUD代表: 增加(create) ,查询(retrieve) ,更新(updat&...
    99+
    2022-11-19
    MySQL增删查改 MySQL数据库操作
  • Mysql 数据库表如何增删改查
    这篇文章将为大家详细讲解有关Mysql 数据库表如何增删改查,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一、表操作1、【增加】 create table ...
    99+
    2024-04-02
  • MySQL表的CURD操作(数据的增删改查)
    目录一、SQL语句二、 基础表操作- 创建表- 查看库中的表- 查看表结构- 删除表- 重命名表三、mysql 中的增删查改操作- 增加(insert语句)- 查询(select语句)- 修改(update)-...
    99+
    2023-02-14
    mysql curd mysql表curd mysql表增删改查语句
  • MySQL 表的增删改查
    MySQL 表的 CURD 什么是 CURD一、增加数据1. insert into 语句2. insert 语句注意事项 二、查询数据1. 全列查找2. 指定列查找3. 指定列查询为表达...
    99+
    2023-10-18
    数据库 mysql
  • mysql如何进行表数据的增删改查
    这篇文章主要介绍mysql如何进行表数据的增删改查,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在mysql中,可以使用SELECT语句进行表数据的查询,使用INSERT语句...
    99+
    2024-04-02
  • 数据库的增删改查命令
    本篇内容介绍了“数据库的增删改查命令”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!表中数据简单管理(增 删...
    99+
    2024-04-02
  • 【MySQL】MySQL表的增删改查(CRUD)
    ✨个人主页:bit me👇 ✨当前专栏:MySQL数据库👇 ✨算法专栏:算法基础👇 ✨每日一语:生命久如暗室,不碍朝歌暮诗 目 录 🔓一. ...
    99+
    2023-08-19
    mysql 数据库 java
  • PandasDataFrame操作数据增删查改
    目录一、DataFrame数据准备二、增删改查操作1,增2,查3,改4,删一、DataFrame数据准备 增、删、改、查的方法有很多很多种,这里只展示出常用的几种。 参数inplac...
    99+
    2024-04-02
  • MySQL表的增删改查(CRUD)
    目录一. CRUD二. 新增(Create)如何修改mysql配置:三. 查询(Retrieve)1. 全列查询2. 指定列查询3. 查询带有表达式 4. 起别名查询5. 去重查询6. 排序查询 7....
    99+
    2023-03-22
    数据库对表的增删改查语句 sql语句的增删改查
  • [MySQL] 表的增删查改(CURD)
      专栏简介 :MySql数据库从入门到进阶. 题目来源:leetcode,牛客,剑指offer. 创作目标:记录学习MySql学习历程 希望在提升自己的同时,帮助他人,,与大家一起共同进步,互相成长. 学历代表过去,能力代表...
    99+
    2023-09-20
    mysql 数据库
  • MySQL中的 增 删 查 改(CRUD)
    目录 新增 insert into 表名 value(数据,数据),.......; insert into 表名(列1,列2.....) value(数据,数据),.......; datatime 类型的数据如何插入? 查询 selec...
    99+
    2023-10-07
    mysql 数据库
  • MySQl表的增删查改(CRUD)
    新增 1.单行插入        insert into 表名 values (值,值...);                            指定列插入    insert into 表名 (列名,列名...) value...
    99+
    2023-09-04
    mysql 数据库
  • MySQL表的增删查改(CRUD)
    文章目录 前言一、新增数据二、查询数据全列查询指定列查询表达式查询指定别名查询去重查询排序查询条件查询分页查询 三、修改数据四、删除数据 前言 CRUD代表: 增加(create) ,查询(retrieve) ,更新(up...
    99+
    2023-08-22
    mysql 数据库 sql
  • 【MySQL】增删查改基础
    文章目录 一、创建操作1.1 单行插入1.2 多行插入1.3 插入否则替换更新1.4 替换replace 二、查询操作2.1 select查询2.2 where条件判断2.3 o...
    99+
    2023-09-03
    mysql 数据库
  • MySQL增删改查(基础)
    目录 一,增加(Create) 1.1 单行数据+全列插入 1.2 多行数据插入 1.3 指定列插入 二,查询(Retrieve) 2.1 全列查询 2.2 指定列查询 2.3 表达式查询 2.4 去重操作 2.5 排序(order by...
    99+
    2023-08-31
    mysql 数据库
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作