掌握 SQL 数据操纵的基础技巧

news2024/9/22 9:33:21

在数据库管理中,SQL 数据操纵语言 (DML) 是至关重要的工具。它主要包括 INSERT、UPDATE 和 DELETE 语句,用于对数据库中的数据进行插入、更新和删除操作。本文将带你快速了解这些基本操作。

插入数据

在创建了一个表之后,最常见的操作就是插入数据。SQL 提供了两种插入数据的方式:INSERT…VALUES 和 INSERT…SET。

INSERT…VALUES

格式:

INSERT [INTO] <表名> [(字段名1, 字段名2, ..., 字段名n)]
VALUES (表达式1, 表达式2, ..., 表达式n),
       (表达式n+1, 表达式n+2, ..., 表达式2n), ...;

这种方式允许你指定一组或多组值来插入数据。例如:

INSERT INTO Department (dno, dname) VALUES ('D1', '计算机学院');

image

注意:字段的顺序可以和表中不一致,但表达式的顺序必须与字段一致。

INSERT…SET

格式:

INSERT [INTO] <表名> SET 字段名1 = 表达式1, 字段名2 = 表达式2, ...;

这种方式无需记住字段的顺序,只需指定字段和值即可:

INSERT INTO Student SET sno='S4', sname='贾哲', sex='女', dno='D1';

image

更新数据

语法:

UPDATE <表名>
SET 字段名1 = 表达式1[, 字段名2 = 表达式2, ...]
[WHERE <条件>][[ORDER BY 排序字段名]LIMIT n];

通过 UPDATE 语句,我们可以更新表中已存在的数据。其基本格式如下:

UPDATE <表名> SET 字段名1=值1 [WHERE 条件];

示例:将 Department 表中 D1 学院的办公地点更新为 C101。

UPDATE Department SET office='C101' WHERE dno='D1';

删除数据

格式:

DELETE FROM <表名> [WHERE <条件>] [[ORDER BY 排序字段名] LIMIT n];

使用 DELETE 语句可以删除表中的一个或多个记录。基本格式为:

DELETE FROM <表名> [WHERE 条件];

示例:删除 Department 表中 D4 学院的记录。

DELETE FROM Department WHERE dno='D4';

参照完整性

在操作数据库时,参照完整性是一个重要概念。当对表进行操作可能影响参照完整性时,DBMS 会进行检查并提供违约处理方式。

image

操作示例

  1. 插入数据时,如果外键不匹配,系统将拒绝插入。
  2. 更新外键时,如果新值在参照表中不存在,系统将拒绝更新。
  3. 删除被参照表的记录时,可能会拒绝删除或级联删除相关记录。

总结

通过掌握 INSERT、UPDATE 和 DELETE 的基本用法,你可以有效管理数据库中的数据。熟悉这些操作将帮助你在数据库管理中更加得心应手。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于SpringBoot+Vue+MySQL的的宠物商城网站

系统背景 基于SpringBootVueMySQL的宠物商城网站是一个结合了现代Web开发技术的综合性电商平台&#xff0c;专为宠物爱好者及宠物商家设计。该系统背景可以从多个方面来阐述&#xff0c;包括但不限于市场需求、技术选型、用户体验以及平台价值等方面。 1. 市场需求 随着人们生…

python内置模块time详解(我们需要了解的多种时间格式)

Python的time模块提供了各种与时间相关的函数。我们可以获取当前时间、操作时间日期、计算两个时间差等。 时间有两种标准表示法: 数字表示: 整数或浮点数&#xff0c;通常是自从1970年1月1日以来的秒数。9个整数组成的元组&#xff1a;元组项包含年份&#xff0c;月份&#…

第 4 章 第 4 章 卷积神经网络-datawhale ai夏令营

独热向量 y ′ 的长度决 定了模型可以识别出多少不同种类的东西。我们希望 y ′ 和 yˆ 的交叉熵越小越好。 为了避免过拟合&#xff0c;在做图像识别的时候&#xff0c;考虑到图像本身的特性&#xff0c;并不一定 需要全连接&#xff0c;即不需要每个神经元跟输入的每个维度都…

进程通信——消息队列

文章目录 1.概念1.0 IPC1.1 什么是消息队列1.2 消息队列工作机制1.3 消息队列与其他进程通信机制的比较&#xff1a; 2.使用System-V版2.1 用户消息缓冲区2.2 创建消息队列msgget2.3 添加消息到消息队列msgsend2.4 从消息队列读取消息、2.5 消息队列的控制函数msgctrl2.6 msqid…

SpringBoot中,启动A服务,naocs却注册B服务,解决思路。

今天遇到了一个令我非常费解的报错&#xff0c;我明明启动的是auth服务&#xff0c;但是nacos愣是给我注册的patient服务&#xff0c;下面看看解决思路&#xff08;虽然我这个问题很乌龙&#xff0c;但如果真的是你的配置有问题&#xff0c;那么这篇文章也是可以帮助到你。&…

开源通用验证码识别OCR —— DdddOcr 源码赏析(二)

文章目录 前言DdddOcr分类识别调用识别功能classification 函数源码classification 函数源码解读1. 分类功能不支持目标检测2. 转换为Image对象3. 根据模型配置调整图片尺寸和色彩模式4. 图像数据转换为浮点数据并归一化5. 图像数据预处理6. 运行模型&#xff0c;返回预测结果 …

如何在Windows和Mac上免费提取RAR文件?这里有方法

序言 你有没有下载过一个文件,却发现它有一个奇怪的.rar文件扩展名?RAR是一种压缩文件格式,与ZIP文件非常相似,在本文中,我们将向你展示如何在Windows或macOS上打开RAR文件。 如何在Windows 11上打开RAR文件 Windows 11在2023年增加了对RAR文件的原生支持。从那时起,你…

前端框架vue3中的条件渲染(v-show,v-if,v-else-if,v-else)

目录 v-show: 需求&#xff1a; v-if 区别与v-show&#xff1a; v-if和v-show的选择&#xff1a; v-else-if和v-else 联合使用&#xff1a; v-show: 部分代码如图&#xff1a; <body><div id"root"><div ><h1>n的值为{{n}}</h1>…

【计算机网络】浏览器输入访问某网址时,后台流程是什么

在访问网址时&#xff0c;后台的具体流程可以因不同的网站、服务器和应用架构而异。 实际过程中可能还涉及更多的细节和步骤&#xff0c;如缓存处理、重定向、负载均衡等。 此外&#xff0c;不同的网站和应用架构可能会有不同的实现方式和优化策略。 部分特定网站或应用&#x…

数据仓库系列19:数据血缘分析在数据仓库中有什么应用?

你是否曾经在复杂的数据仓库中迷失方向&#xff0c;不知道某个数据是从哪里来的&#xff0c;又会流向何方&#xff1f;或者在处理数据质量问题时&#xff0c;无法快速定位根源&#xff1f;如果是这样&#xff0c;那么数据血缘分析将会成为你的得力助手&#xff0c;帮助你在数据…

协议转换桥+高速协议传输终端

多路协议传输终端&#xff08;正在更新&#xff09; 整体框图&#xff08;正在更新&#xff09; 万兆UDP协议栈 整体框图 10G 8b10b phy层设计 整体框图 报文格式

从pdf复制的表格内容粘贴到word或excel表格保持表格格式

对于it工作&#xff0c;硬件和软件&#xff0c;经常需要从pdf复制表格内容到word或excel&#xff0c;但是windows的ctrlc和ctrlv只能复制内容而不能保留表格的格式。 粘贴进word或excel的表格后&#xff0c;不能保持原来表格的排列&#xff0c;特别是word&#xff0c;复制的pdf…

[Leetcode] 接雨水(相向双指针)

可以直接移步大神的解题思路&#xff0c;非常详细 -> 盛最多水的容器 接雨水_哔哩哔哩_bilibili 11. 盛最多水的容器 https://leetcode.cn/problems/container-with-most-water/description/ 42. 接雨水 https://leetcode.cn/problems/trapping-rain-water/description/ 11…

并发编程之LockSupport的 park 方法及线程中断响应

并发编程之LockSupport的 park 方法及线程中断响应-CSDN博客

STM32CubeIDE

文章目录 Stm32CubeIDE开发环境介绍获取路径 新建工程 Stm32CubeIDE 开发环境介绍 也就是说IDE是集合了CubeMX 和MDK5的。 区别&#xff1a; 获取路径 官网&#xff1a;https://www.st.com/en/development-tools/stm32cubeide.html A盘路径&#xff1a;A盘\6&#xff0c;软…

Signed distance fields (SDFs) and Truncated Signed Distance Field(TSDF)

1. Signed distance fields (SDFs) 笔记来源&#xff1a; [1] Signed distance fields (SDFs) [2] Signed Distance Function (SDF): Implicit curves or surfaces [3] Ray Marching and Signed Distance Functions [4] Truncated Signed Distance Function [5] Wiki/Signed d…

个人旅游网(4)——功能详解——收藏功能

文章目录 一、收藏排行榜功能1.1、接口详解1.1.1、findRouteList 二、收藏功能2.1、接口详解2.1.1、find&#xff08;用于判断当前旅游路线是否已被收藏&#xff09;2.1.2、add-favorite&#xff08;用于实现收藏功能&#xff09;2.1.3、remove-favorite&#xff08;用于实现取…

ubuntu20.04搭建kubernetes1.28.13集群配置calico网络插件

写在前面 这里是我在搭建过程中从某站找到的教学视频,搭载的都是最新的,大家可以参考一下 搭建kubernetes集群学习视频: 视频链接。最后面会有我遇见报错信息的所有连接和解决方案,自行查看 不说废话,直接开搭 搭建集群大纲 一、三台虚拟机的初始化 二、三台虚拟机连接…

内存管理篇-19 TLB和Table wake unit

TLB这几节&#xff0c;停下来感觉怪怪的。没有从TLB的引入&#xff0c;工作原理&#xff0c;实际源码应用来深入分析。 TLB 是一种高速缓存&#xff0c;用于存储最近使用的页表项&#xff08;Page Table Entries, PTEs&#xff09;。它的主要目的是加速虚拟地址到物理地址的转换…

卷积公式的几何学理解

1、Required Knowledge 1.1、概率密度函数 用于描述连续型随机变量在不同取值上的概率密度&#xff0c;记作 f ( x ) f(x) f(x)。 如随机变量 X X X的分布为正态分布&#xff0c;则其概率密度函数为&#xff1a; f ( x ) 1 σ 2 π e − ( x − μ ) 2 2 σ 2 f(x)\frac{1}…