SQL 必知必会·笔记14更新和删除数据
1. 更新数据
基本的UPDATE语句,由三部分组成:
- 要更新的表
- 列名和它们的新值
- 确定要更新那些行的过滤条件
更新单列示例:
1 UPDATE Customers 2 SET cust_email = 'kim@thetoystore.com' 3 WHERE cust_id = '1000000005';
更新多列的示例:
1 UPDATE Customers 2 SET cust_contact = 'Sam Roberts', 3 cust_email = 'sam@toyland.com' 4 WHERE cust_id = '1000000006';
注意:不要省略WHERE 子句
在使用UPDATE 时一定要细心。因为稍不注意,就会更新表中的所有行
提示:在UPDATE 语句中使用子查询
UPDATE 语句中可以使用子查询,使得能用SELECT 语句检索出的数据 更新列数据
提示:FROM 关键字
有的SQL(SQL Server支持)实现支持在UPDATE 语句中使用FROM 子句,用一个表的数据更新另一个表的行。
2. 删除数据
DELETE的两种使用方式:
- 从表中删除特定的行;
- 从表中删除所有行。
注意:不要省略WHERE 子句
在使用DELETE 时一定要细心。因为稍不注意,就会错误地删除表中所有行。
示例:
1 //FORM 关键字是可选的 2 DELETE FROM Customers 3 WHERE cust_id = '1000000006';
提示:更快的删除
如果想从表中删除所有行,不要使用
DELETE
。可使用TRUNCATE TABLE
语句,它完成相同的工作,而速度更快(因为不记录数据的变动)。
3. 更新和删除数据的建议
使用UPDATE 或DELETE 时所遵循的重要原则:
- 除非确实打算更新和删除每一行,否则绝对不要使用不带WHERE 子句的UPDATE 或DELETE 语句。
- 保证每个表都有主键,尽可能像WHERE 子句那样使用它(可以指定各主键、多个值或值的范围)。
- 在UPDATE 或DELETE 语句使用WHERE 子句前,应该先用SELECT 进行测试,保证它过滤的是正确的记录,以防编写的WHERE 子句不正确。
- 使用强制实施引用完整性的数据库(关于这个内容,请参阅第12 课),这样DBMS 将不允许删除其数据与其他表相关联的行。
- 有的DBMS 允许数据库管理员施加约束,防止执行不带WHERE 子句的UPDATE 或DELETE 语句。如果所采用的DBMS 支持这个特性,应该使用它。
转载于:https://www.cnblogs.com/IPrograming/p/3329672.html
SQL 必知必会·笔记14更新和删除数据相关推荐
- sql必知必会(第四版) 学习笔记一
温习一遍简单的sql语法,把自己掌握还不够的地方,做了些笔记.... 1 去重复关键词,distinct select distinct sname from student; 2 限制结果top的用 ...
- mysql日期维表sql文件_《MySQL必知必会》笔记(SQL练习+建表语句)
站在巨人的肩上 Standing On Shoulders Of Giants 部分转自:https://www.jianshu.com/p/294502893128 https://blog.csd ...
- SQL必知必会第4版读书笔记
SQL必知必会_4 前言 @author 鲁伟林 在读电子版<<SQL必知必会>> 第4版时,做了下笔记.供以后自己或者其他学习者参考. 电子版<<SQL必知必会& ...
- 【SQL】【读书笔记】《MySQL必知必会》
本文为<MySQL必知必会>[1]读书笔记,用于总结知识点和框架,仅供参考和交流,如有不妥请联系.由于软件版本更新,书中的一些代码已经不再适用,本文主要从SQL基本语句进行增删减.窗口函数 ...
- SQL必知必会-进阶篇[SQL学习笔记]
本篇博客是对于陈旸老师极客专栏"SQL 必知必会"进阶篇的笔记总结.需要学习资料可私信. 文章目录 第20课 数据库优化 第21课 数据库的设计范式都有哪些? 数据表的键都有哪些? ...
- asp sql ip地址排序_SQL必知必会读书笔记,30分钟入门SQL!
点击上方SQL数据库开发,关注获取SQL视频教程 SQL专栏 SQL数据库基础知识汇总 SQL数据库高级知识汇总 来源:https://segmentfault.com/p/1210000011760 ...
- SQL必知必会读书笔记
<SQL必知必会> 1.SQL概述(概念.优点.数据库术语) * 日常生活中的数据库案例举例(例如在网站搜索东西:登录账号密码:取钱:) * 数据库概念:数据库database(以一种有组 ...
- 《SQL必知必会》查询部分学习笔记
目录 <SQL必知必会>查询部分学习笔记 1 前言 2 认识SQL 3 检索数据 4 排序检索数据 5 过滤数据 6 高级数据过滤 7 通配符 8 创建计算字段 9 使用函数处理数据 11 ...
- 【SQL必知必会笔记(3)】SELECT语句的WHERE子句数据过滤操作
上个笔记主要介绍了利用SELECT语句检索单个/多个/所有列,并利用DISTINCT关键字检索具有唯一性的值.利用LIMIT/OFFSET子句限制结果:以及利用ORDER BY子句排序检索出的数据,主 ...
最新文章
- IE11与Cognos怪谈
- springboot整合mybatis增删改查(三):mybatis逆向工程
- HarmonyOS之AI能力·二维码的生成和使用
- for each....in、for in、for of
- 新基建火了,开源云计算渠道能做什么?
- C语言中的指针有什么作用
- DB2 SQL性能调优秘笈pdf
- 保护 WordPress 安全的10个方法
- C4D立体数字设计灵感,适合庆典应用|这波用得6啊!
- 09 动态数组和数据
- leetcode python3 简单题26. Remove Duplicates from Sorted Array
- 元月元日是哪一天_2020年下元节是哪一天 几月几号
- 如何在Mac OSX系统下安装Tomcat
- PHP设计模式——单例模式
- [GO语言基础] 一.为什么我要学习Golang以及GO语言入门普及
- java 读取yaml配置文件
- android+excel软件,Android版Office办公软件Excel应用
- mocha java mv_代码覆盖Mocha
- Android中对静态壁纸和动态壁纸原理深入理解
- Laya2自动同步cullingMask方案以及灯光裁剪补丁
热门文章
- play 连接mysql_Play framework 2.x 连接mysql | 学步园
- java字符集编码是,java字符集与编码有关问题
- git 忽略 部分文件夹_git设置忽略文件和目录
- 下拉框_jQuery 美化界面的下拉框
- LeetCode 454. 四数相加 II 思考分析
- ruby hash方法_Ruby中带有示例的Hash.invert方法
- ajax为什么有时候不行,为什么不能用ajax调用
- 汇编语言-010(循环移位ROL,ROR 、进位循环进位RCL,RCR 、有符号数溢出 、双精度移位SHLD,SHRD、SHL和ADD计算 、位运算应用)
- 苹果手机的计算机删除了怎么恢复,苹果手机电话删除了怎么恢复
- 设一组初始记录关键字序列为(25,50,15,35,80,85,20,40,36,70)进行一趟归并后的结果为