数据的插入、修改和删除

一、 插入数据

1. 向表中所有字段插入数据

(1) 指定所有字段及其相对应的值

insert into 表名(字段1,字段2,……) values(字段值1,字段值2,……);

**【案例】**向goods表中插入一条新记录
步骤1: 执行以下语句,选择数据库db_shop。

use db_shop;

步骤2: 执行以下语句,向goods表中插入一条新记录。

insert into goods(id,type,name,price,num,add_time) values(1,'书籍','西游记',50.4,20,'2018-01-01 13:40:40');

步骤3: 插入成功后执行SQL语句,查看表中的所有记录。

select * from goods;

在这里插入图片描述

(2) 不指定字段只列出字段值

insert into 表名 values (字段值1,字段值2,……);

步骤1: 选择数据库db_shop后,执行以下语句向goods表中插入一条新记录。

insert into goods values(2,'糖类','牛奶糖',7.5,200,'2018-02-02 13:40:40');

在这里插入图片描述

注意!!!
(1) 指定所有字段:字段顺序可以不按照表中字段顺序排列,字段值和字段之间一一对应既可
(2) 不指定所有字段:字段值必须和表中字段顺序一致
(3) 当插入值的数据类型为字符串和日期时,需要将值包含在英文格式的引号中
(4) 当插入值的数据类型为enum和set时,插入的值必须是预定义列表中的一个值。如果插入的值不在列表中,MySQL将会报错

2. 向表中指定字段插入数据

insert into 表名(字段1,字段2,……) values(字段值1,字段值2,……)

【案例】 向goods表中指定字段插入数据

步骤1: 选择数据库db_shop后,执行以下语句向goods表中插入记录。

insert into goods(type,name,price) values('糖类','水果糖',2.5);

步骤2: 插入成功后查看数据。

select * from goods;

在这里插入图片描述

3. 同时插入多条数据

insert into 表名(字段1,字段2,……) values(字段值1,字段值2,……)(字段值1,字段值2,……)(字段值1,字段值2,……)

**【案例】**向goods表中插入多条记录。
步骤1: 选择数据库db_shop后,执行以下语句向goods表中插入多条记录。

INSERT INTO goods(id,type,name,price,num,add_time) VALUES
(4,'服饰','休闲西服',800,null,'2016-04-04 13:40:40'),
(5,'饮品','果汁',3,70,'2016-05-05 13:40:40'),
(6,'书籍','论语',109,50,'2016-06-06 13:40:40');

步骤2: 插入成功后查看数据。

select * from goods;

在这里插入图片描述

4.查看表中的数据:

select * from 表名;

总结
(1)当字段设置了自增约束时,系统会根据记录的顺序自动生成对应的编号(id);
(2)当字段设置了默认约束时,插入数据的时候,该字段没有赋值,系统会将该字段的值)设置成对应的默认值;
(3)当字段没有设置默认值约束和自增约束时,插入数据的时候,该字段没有赋值,系统会将该字段的值设置成null;
(4)当字段设置了非空约束时,插入数据的时候,必须给该字段赋值。

4. 将其他表中的数据插入表中

insert into1(字段1,字段2,……) select 字段1,字段2,…… from2

【案例】将goods表中的数据插入到new_goods表中。
步骤一: 选择数据库db_shop后,执行以下语句创建new_goods表,其表结构与goods表相同。

CREATE TABLE new_goods (
id INT(11) PRIMARY KEY AUTO_INCREMENT,
type VARCHAR(30) NOT NULL,
name VARCHAR(30) UNIQUE,
price DECIMAL(7,2) UNSIGNED,
num INT(11) DEFAULT 0,
add_time DATETIME
);

步骤2: 执行以下SQL语句,将goods表中的数据插入到new_goods表中。

INSERT INTO new_goods(id,type,name,price,num,add_time)
SELECT id,type,name,price,num,add_time FROM goods;

在这里插入图片描述

步骤3: 插入成功后查看数据,结果如下所示。

select * from new_goods;

在这里插入图片描述

某些情况下,只需要将表中部分字段的数据插入到另一张表中,此时可以通过以下方法实现。
**【案例】**创建新表test_goods,并插入数据。
步骤1: 选择数据库db_shop后,执行以下语句创建test_goods表。

CREATE TABLE test_goods(
g_id INT(11) PRIMARY KEY AUTO_INCREMENT,
g_name VARCHAR(30) UNIQUE,
g_price DECIMAL(7,2) UNSIGNED
);

在这里插入图片描述

**步骤2:**执行以下语句,将goods表中id,name和price字段的数据插入到test_goods表中。

INSERT INTO test_goods(g_id,g_name,g_price) 
SELECT id,name,price FROM goods;

在这里插入图片描述

  • 两张表的字段名可以不一样,但数据类型必须一样。
  • 插入数据时,SQL语句中的字段顺序可以与表中的字段顺序不同,但两张表中的字段顺序必须一一对应

二、 修改数据

修改表中某个字段的字段值

1.修改所有数据某个字段值

update 表名 set 字段名1=新字段值1,字段名2=新字段值2,……;

**【案例】**修改goods表中的num值。
步骤1: 选择数据库db_shop后,执行以下语句将goods表中的num值统一修改为“0”。

UPDATE goods SET num=0;

在这里插入图片描述

步骤2: 修改成功后查看数据,结果如下所示。

SELECT * FROM goods;

在这里插入图片描述

2.修改指定数据某个字段值

update 表名 set 字段名1=新字段值1,字段名2=新字段值2,…… where 条件;

**【案例】**修改goods表中指定数据。

步骤1: 选择数据库db_shop后,执行以下语句,修改goods表中type值为“书籍”的记录,将其num值修改为“10”。

UPDATE goods SET num=10 WHERE type='书籍';

在这里插入图片描述

步骤2: 修改成功后查看数据

SELECT * FROM goods;

在这里插入图片描述

三、 删除数据

1. 删除表中所有数据

delete from 表名;

【案例】 删除new_goods表中所有数据。
步骤1: 选择数据库db_shop后,执行以下语句删除new_goods表中所有数据。

DELETE FROM new_goods;

在这里插入图片描述

步骤2: 删除成功后查询数据,结果如下所示。

SELECT * FROM new_goods;

在这里插入图片描述

2. 删除指定数据

delete from 表名 where 条件;

【案例】删除goods表中id值大于5的记录。

步骤1: 选择数据库db_shop后,执行以下语句删除goods表中id值大于5的记录。

DELETE FROM goods WHERE id>5;

在这里插入图片描述

步骤2: 删除成功后查询数据,结果如下所示。

SELECT * FROM goods;

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/551243.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

密码学 | 椭圆曲线数字签名方法 ECDSA(上)

目录 1 ECDSA 是什么? 2 理解基础知识 3 为什么使用 ECDSA? 4 基础数学和二进制 5 哈希 6 ECDSA 方程 7 点加法 8 点乘法 9 陷阱门函数! ⚠️ 原文:Understanding How ECDSA Protects Your Data. ⚠️ 写在前面…

Java+saas模式 智慧校园系统源码Java Android +MySQL+ IDEA 多校运营数字化校园云平台源码

Javasaas模式 智慧校园系统源码Java Android MySQL IDEA 多校运营数字化校园云平台源码 智慧校园即智慧化的校园,也指按智慧化标准进行的校园建设,按标准《智慧校园总体框架》中对智慧校园的标准定义是:物理空间和信息空间的有机衔接&#…

第七周学习笔记DAY.1-封装

学完本次课程后,你能够: 理解封装的作用 会使用封装 会使用Java中的包组织类 掌握访问修饰符,理解访问权限 没有封装的话属性访问随意,赋值也可能不合理,为了解决这些代码设计缺陷,可以使用封装。 面向…

【Linux系统编程】第四弹---基本指令(二)

✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】【C详解】【Linux系统编程】 目录 1、echo指令 2、cat指令 3、more指令 4、less指令 4、head指令 5、tail指令 6、时间相关的指令 7、cal指令 8、find指…

若依从0到1部署

服务器安装 MySQL8 Ubuntu 在 20.04 版本中,源仓库中 MySQL 的默认版本已经更新到 8.0,因此可以直接使用 apt-get 安装。 设置 apt 国内代理 打开 https://developer.aliyun.com/mirror/ 阿里云镜像站,找到适合自己的系统: 找…

记【k8s】:访问 Prometheus UI界面:kubernetes-etcd (0/1 up) Error : out of bounds

记【k8s】:访问 Prometheus UI界面:kubernetes-etcd (0/1 up) Error : out of bounds 1、报错详情2、解决方法 💖The Begin💖点点关注,收藏不迷路💖 出现 “out of bound…

软件项目实施方案(Word原件2024)

软件实施方案 二、 项目介绍 三、 项目实施 四、 项目实施计划 五、 人员培训 六、 项目验收 七、 售后服务 八、 项目保障措施软件开发管理全套资料包清单: 工作安排任务书,可行性分析报告,立项申请审批表,产品需求规格说明书&am…

抖音IP打造品牌规划流量运营方案推广计划书

【干货资料持续更新,以防走丢】 抖音IP打造品牌规划流量运营方案推广计划书 部分资料预览 资料部分是网络整理,仅供学习参考。 50页可编辑(完整资料包含以下内容) 目录 详细的抖音运营方案,帮助品牌在抖音平台上提升…

MATLAB 点到平面距离的简易计算 (61)

MATLAB 点到平面的垂直距离 (61) 一、算法介绍二、算法实现1.代码2.结果一、算法介绍 一行代码计算点到平面的距离,下面是MATLAB版本的实现方法, 使用一组自定义的点和平面验证,结果表明计算正确: 二、算法实现 1.代码 代码如下(示例): % 定义点的坐标 point = …

李沐41_物体检测和数据集——自学笔记

边缘框 1.一个边缘框可以通过4个数字定义(左上xy,右上xy,左下xy,右下xy) 2.标注成本高 目标检测数据集 1.每行表示一个物体(图片文件名、物体类别、边缘框) 2.COCO:80物体、330…

ABeam德硕 | 大语言模型系列 (2) :大语言模型的商业模式及应用

上期我们分享了大语言模型的基本概念等内容,本期作为大语言模型系列的第二篇,我们将关注大语言模型的商业模式及商业价值,介绍MaaS (Model as a Service,模型即服务)的核心路径、国内外大语言模型收费方式情况及大语言模型在国内的…

串口接收第一个字节接收不到

问题描述: 我发 5 1 2 3 他接受的是1 2 3 5 全速运行第一个字节就没有了。但是把接受的数据再发出来,发现第一个字节到了最后一个字节。 看了网上说的,我一次只发一个字节不会出现这种情况,发多个字节全速运行就会出现这样情况,…

Qt 4 QPushButton

Qt 常用控件 QPushButton 实例 Push Button:命令按钮。 入口文件 main.cpp #include "mainwindow.h"#include <QApplication>int main(int argc, char *argv[]) {QApplication a(argc, argv);MainWindow w;w.show();return a.exec(); }头文件 mainwindow.h …

LeetCode 179 in Python. Largest Number (最大数)

寻找最大数的逻辑简单&#xff0c;但如何对两数比较组成更大的整数是一个重点。例如示例2中如何区分3与30谁放在前面以及3与34谁放在前面是一个难点&#xff0c;本文通过采用functools中的自定义排序规则cmp_to_key()来判断上述情况&#xff0c;并给出代码实现。 示例&#xf…

喜讯 | 同元软控荣获北京市科学技术奖

近日&#xff0c;2022年度北京市科学技术奖正式公布&#xff0c;由苏州同元软控信息技术有限公司&#xff08;以下简称“同元软控”&#xff09;总经理刘奇等人参与完成的“复杂航天器电气系统设计、建模与验证关键技术及应用”项目荣获北京市科学技术奖技术发明二等奖。 该项目…

element-ui container 组件源码分享

今日简单分享 container 组件的源码实现&#xff0c;从以下两个方面来讲解&#xff1a; 1、container 组件的页面结构 2、container 组件的属性 一、container 组件的页面结构 二、container 组件的属性 1、container 部分的 direction 属性&#xff0c;子元素的排列方向&am…

模仿银行系统的极简Java三层结构应用——存钱功能的实现

一&#xff0c;前提&#xff1a; 我们上次做了一个简易的银行系统&#xff0c;初步认识了java结构&#xff0c;目前该系统可以输入要用的数据并且输出。 二&#xff0c;目标&#xff1a; 我们这次的目标是实现一个简易的存钱功能&#xff0c;并输出存钱后的余额&#xff0c;…

【学习】jemter中如何高效使用正则表达式

在Jemter的世界里&#xff0c;正则表达式无疑是一把锐利的剑&#xff0c;它可以帮助我们轻松地解决许多问题。在Jemter的性能测试过程中&#xff0c;我们常常需要提取响应中的某些数据&#xff0c;以便在后续的请求中使用。这时&#xff0c;正则表达式就派上用场了。通过学习如…

MySql中truncate,delete有什么区别?什么情况下id会不会连续呢?

TRUNCATE和DELETE都是用来删除表中数据的SQL命令&#xff0c;但它们的工作方式和使用场景有所不同&#xff1a; DELETE命令&#xff1a;DELETE命令用于从表中删除一行、多行或所有行。你可以添加WHERE子句来指定要删除的行。例如&#xff0c;DELETE FROM table_name WHERE cond…

ELK日志分析系统之Kafka

目录 一、消息队列基本介绍 1、为什么需要消息队列(MQ) 2、使用消息队列的好处 1.解耦 2.可恢复性 3.缓冲 4.灵活性 & 峰值处理能力 5.异步通信 3、Kafka消息队列的两种模式 1.点对点模式 2.发布/订阅模式 二、Kafka基本介绍 1、Kafka定义 2、Kafka概念 3、…