oracle 更新和删除数据

oracle 更新和删除数据

除了DBMS中常用的查询(SELECT),插入(INSERT)操作外,数据库还有一些操作例如:更新,和删除数据。

1. 更新数据

要更新(修改)表中的数据,可以使用UPDATE语句。使用UPDATE的方式有两种:

  • 更新表中特定的行
  • 更新表中的所有行

警告:不要省略WHERE子句

在使用UPDATE时必须特别小心,因为非常容易错误的更新表中的每一行。

UPDATE使用示例:

UPDATE customers
SET cust_email = 'elmer@fudd.com'
WHERE cust_id = 10005;

在更新多列时,将只使用单个SET命令,并用逗号隔开每个column = value对(在最后一个列后面无需指定逗号)。

提示:在UPDATE语句中使用子查询

在UPDATE语句中可以使用子查询,允许利用通过SELECT语句检索的数据更新列。

要删除列的值,可以将其设置为NULL。

UPDATE customers
SET cust_email = NULL
WHERE cust_id = 10005;

2. 删除数据

要从表中删除(移除)数据,可以使用DELETE语句,这有两种方式:

  • 从表中删除特定的行
  • 从表中删除所有行
    删除数据示例:
DELETE FROM customers
WHERE cust_id = 10006;

DELETE不接受列名或者通配符,他将删除整行,而不是删除列。

注意:是表内容,而不是表

DELETE语句将从表中删除行,甚至表中的所有行,但是DELETE永远不会删除表本身。

3. 更新和删除数据的指导原则

  • 永远不要执行不带有WHERE子句的UPDATE或DELETE,除非确实打算更新和删除每一行。
  • 确保每个表都具有一个主键(如果忘记了这是什么,可以参阅第15章),并且只要有可能,就把它用作WHERE子句(你可能指定各个主键、多个值或者值范围)。
  • 在结合使用WHERE子句与UPDATE或DELETE之前,首先要利用SELECT测试它,以确保它过滤出正确的记录——编写不正确的WHERE子句要容易得多。
  • 使用数据库实施的参照完整性(也请参阅第15章了解关于它的信息),如果要删除的行在其他表中具有与它们相关联的数据,那么Oracle将不允许执行删除操作。

警告:谨慎的使用

最为关键的是,Oracle没有Undo(撤销)按钮。要非常小心地使用UPDATE和DELETE,否则你会发现自己更新和删除了错误的数据。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部