当前位置:网站首页>oracle 更新和删除数据
oracle 更新和删除数据
2022-07-29 04:23:00 【zhiyou-rookie】
oracle 更新和删除数据
除了DBMS中常用的查询(SELECT),插入(INSERT)操作外,数据库还有一些操作例如:更新,和删除数据。
1. 更新数据
要更新(修改)表中的数据,可以使用UPDATE语句。使用UPDATE的方式有两种:
- 更新表中特定的行
- 更新表中的所有行
警告:不要省略WHERE子句
在使用UPDATE时必须特别小心,因为非常容易错误的更新表中的每一行。
UPDATE使用示例:
UPDATE customers
SET cust_email = '[email protected]'
WHERE cust_id = 10005;
在更新多列时,将只使用单个SET命令,并用逗号隔开每个column = value对(在最后一个列后面无需指定逗号)。
提示:在UPDATE语句中使用子查询
在UPDATE语句中可以使用子查询,允许利用通过SELECT语句检索的数据更新列。
要删除列的值,可以将其设置为NULL。
UPDATE customers
SET cust_email = NULL
WHERE cust_id = 10005;
2. 删除数据
要从表中删除(移除)数据,可以使用DELETE语句,这有两种方式:
- 从表中删除特定的行
- 从表中删除所有行
DELETE不接受列名或者通配符,他将删除整行,而不是删除列。
注意:是表内容,而不是表
DELETE语句将从表中删除行,甚至表中的所有行,但是DELETE永远不会删除表本身。
3. 更新和删除数据的指导原则
- 永远不要执行不带有WHERE子句的UPDATE或DELETE,除非确实打算更新和删除每一行。
- 确保每个表都具有一个主键(如果忘记了这是什么,可以参阅第15章),并且只要有可能,就把它用作WHERE子句(你可能指定各个主键、多个值或者值范围)。
- 在结合使用WHERE子句与UPDATE或DELETE之前,首先要利用SELECT测试它,以确保它过滤出正确的记录——编写不正确的WHERE子句要容易得多。
- 使用数据库实施的参照完整性(也请参阅第15章了解关于它的信息),如果要删除的行在其他表中具有与它们相关联的数据,那么Oracle将不允许执行删除操作。
警告:谨慎的使用
最为关键的是,Oracle没有Undo(撤销)按钮。要非常小心地使用UPDATE和DELETE,否则你会发现自己更新和删除了错误的数据。
边栏推荐
猜你喜欢
Why is it necessary to scale the attention before softmax (why divide by the square root of d_k)
不会就坚持66天吧 权重生成随机数
Deploy Jenkins using containers
The principle of inverse Fourier transform (IFFT) in signal processing
SVG--loading动画
Introduction and examples of parameters in Jenkins parametric construction
Locally call tensorboard and Jupiter notebook on the server (using mobaxterm)
Applet: Area scrolling, pull-down refresh, pull-up load more
用 ZEGO Avatar 做一个虚拟人|虚拟主播直播解决方案
LeetCode_ Stack topics
随机推荐
11.备份交换机
redux快速上手
Machine vision Series 2: vs DLL debugging
MySQL - 深入解析MySQL索引数据结构
Copy products with one click from Taobao, tmall, 1688, wechat, jd.com, Suning, taote and other platforms to pinduoduo platform (batch upload baby details Interface tutorial)
LCA board
No, just stick to it for 64 days. Find the insertion location
6. Pytest generates an allure Report
编译与链接
Object detection: object_ Detection API +ssd target detection model
不会就坚持61天吧 最短的单词编码
On quotation
WebRTC实现简单音视频通话功能
信号处理中的反傅里叶变换(IFFT)原理
异常解决:cococaption包出现找不到edu.stanford.nlp.semgraph.semgrex.SemgrexPattern错误
Interview notes of a company
Implementation of jump connection of RESNET (pytorch)
Why do I delete the original record (OP d) and then add a new one in Kafka when I update MySQL data
论pyscript使用感想(实现office预览)
小程序:区域滚动、下拉刷新、上拉加载更多