第I部分 基础篇
第0章 软件工程过程和关系数据库
0.1 什么是数据库
0.2 数据库模型
0.3 什么是软件工程过程
0.4 参考文献
第1章 在Windows系统中使用Oracle
1.1 开始使用Oracle
1.2 设置系统参数
1.3 使用Oracle命令
1.4 编辑SQL语句
1.5 显示“学生一课程(StUdent-Course)”数据库
1.6 介绍Oracle的数据字典
1.7 使用DESC命令
1.8 书写SQL语句时应遵守某些约定
1.9 练习
第2章 基本SQL语句
2.1 扩展的SELECT语句
2.2 简单的CREATE TABLE命令
2.3 往已创建的表中插入数据
2.4 UPDATE命令
2.5 DELETE命令
2.6 ROLLBACK、COMMIT和SAVEPOINT命令
2.7 ALTER TABLE命令
2.8 数据类型
2.9 练习
第3章 笛卡尔积、连接运算和别名
3.1 笛卡尔积
3.2 连接
3.3 列别名
3.4 脚本
3.5 COUNT和Rownum
3.6 练习
3.7 参考文献
第4章 函数和匹配
4.1 COUNT函数
4.2 其他基本函数
4.3 进一步讨论数据字典
4.4 练习
第5章 查询开发、权限和导出结构
5.1 查询开发
5.2 SQL表达式中的括号
5.3 导出结构
5.4 给表和视图授予权限和取消权限
5.5 查询开发和导出结构
5.6 练习
第6章 集会操作
6.1 集合操作介绍
6.2 IN和NOT…IN运算符
6.3 差(Difference)操作
6.4 练习
第7章 连接和子查询
7.1 使用IN运算的子查询
7.2 用连接(join)来实现子查询
7.3 无法转换成子查询的连接
7.4 使用连接和IN运算的更多例子
7.5 带运算符的子查询
7.6 练习
第8章 GROUP BY和 HAVING子句
8.1 聚集/列函数
8.2 GROUP BY子句
8.3 HAVING子句
8.4 审计IN子查询
8.5 Null值再讨论
8.6 练习
第9章 相关于查询
9.1 非相关子查询
9.2 相关子查询
9.3 存在查询和相关性
9.4 NOT EXISTS
9.5 SQL的全称限定符和存在限定符
9.6 练习
9.7 参考文献
第II部分 高级篇
第10章 创建表和使用SQLLOADER
10.1 简单的CREATE TABLE命令
10.2 NOT NULL约束
10.3 PRIMAR KEY(主键)约束
10.4 UNIQUE(惟一性)约束
10.5 CHECK(检查)约束
10.6 引用完整性
10.7 有关约束名的进一步讨论
10.8 SQLLOADER
10.9 SQLLOADER例子 1
10.10 SQLLOADER例子 2
10.11 练习
第11章 SQLPLUS命令、启动文件和报表
11.1 创建一个文件(START表)并运行它
11.2 使用DECODE GREATEST和LEAST函数
11.3 为START文件添加报表命令
11.4 使用带有ACCEPT和PROMPT命令的STAR文件
11.5 使用带有位置输入的START文件
11.6 练习
第12章 匿名块、过程、函数和包
12.1 匿名块
12.2 具有顺序结构的初级过程
12.3 具有选择和迭代功能的过程
12.4 函数
12.5 包
12.6 定义PL/SQL的INDEX BY表
12.7 练习
12.8 参考文献
第13章 触发器简介
13.1 什么是触发器?
13.2 使用WHEN子句
13.3 一张表上的一个触发器影响另一个触发器
13.4 变异表
13.5 练习
13.6 参考文献
附录
附录 A 在UNIX系统中使用Oracle
A.1 在UNIX环境下启动Oracle
A.2 登录进运行在UNIX系统之下的Oracle
A.3 在UNIX系统中编辑SQL命令
A.4 一些常用的UNIX命令
A.5 编辑器
A.6 练习
附录 B 数据字典
B.1 探索数据字典
B.2 从数据字典中选择视图的范式
B.3 表的视图
B.4 其他对象:表空间和约束
B.5 有关表空间的视图
B.6 有关约束的视图
B.7 练习
B.8 参考文献
附录 C 学生数据库及相关表
附录 D Oracle 8i和Oracle 9i新增的改进
D.1 Oracle 8i新增的改进
D.2 Oracle 9i新增的改进
D.3 参考文献
术语表
重要命令和函数表