本文属于「数据库系统学习实践」系列文章之一,这一系列着重于「数据库系统知识的学习与实践」。由于文章内容随时可能发生更新变动,欢迎关注和收藏数据库系统系列文章汇总目录一文以作备忘。需要特别说明的是,为了透彻理解和全面掌握数据库系统,本系列文章中参考了诸多博客、教程、文档、书籍等资料,限于时间精力有限,这里无法一一列出。部分重要资料的不完全参考目录如下所示,在后续学习整理中还会逐渐补充:
- 数据库系统概念 第六版
Database System Concepts, Sixth Edition ,作者是 Abraham Silberschatz, Henry F. Korth, S. Sudarshan ,机械工业出版社 - 数据库系统概论 第五版,王珊 萨师煊编著,高等教育出版社
5. 数据更新
数据更新操作有三种:向表中添加若干行数据、修改表中的数据和删除表中的若干行数据,在SQL中有相应的三类语句。
5.1 插入数据
SQL的数据插入语句 insert 通常有两种形式,一种是插入一个元组,另一种是插入子查询结果,后者可以一次插入多个元组。
1. 插入元组
插入元组的 insert 语句的格式如下。功能是将新元组插入指定表中,其中新元组的属性列1的值为常量1,属性列2的值为常量2,……。into 子句中没有出现的属性列,新元组在这些列上将取空值。但必须注意的是,在表定义时说明了 not NULL 或 unique 或为主键的属性列不能取空值,否则会出错。如果 into 子句中没有指明任何属性列名,则新插入的元组必须在每个属性列上均有值。
insert
into <表名> [(<属性列1>[, <属性列2>]...)]
values(<常量1>[, <常量2>]...);
例69
例70
例71
2. 插入子查询结果
5.2 修改数据
1. 修改某个元组的值
2. 修改多个元组的值
3. 带子查询的修改语句
5.3 删除数据
1. 删除某个元组的值
2. 删除多个元组的值
3. 带子查询的删除语句
|