译者序
前言
第一部分 数据库基础
第1章 数据库介绍
1.1 是什么数据库
1.1.1 表
1.1.2 行/记录
1.1.3 列/字段
1.2 数据库与电子表格有何不同
1.2.1 行数多
1.2.2 允许许多用户同时使用
1.2.3 安全
1.2.4 关系能力
1.2.5 保证数据质量的约束条件
1.3 怎样知道本书是否对你有用
1.3.1 在作为数据库管理员时
1.3.2 在开发软件时
1.3.3 在进行业务分析时
1.3.4 如果只想知道怎样更好地利用数据库
1.4 SQL的历史
1.5 SQL命令种类
1.5.1 数据定义命令
1.5.2 数据操纵命令
1.5.3 数据控制命令
1.5.4 数据检索命令
1.5.5 事务处理控制命令
1.6 小结
1.7 习题
1.8 习题答案
第2章 数据存储和检索基础
2.1 一个快速的练习
2.1.1 建立一个表
2.1.2 插入记录
2.1.3 选择记录
2.1.4 删除表
2.2 建立表
2.2.1 表和列的命名准则
2.2.2 建立更复杂的表
2.2.3 显示表的结构
2.2.4 NULL和NOT NULL列
2.3 插入数据
2.3.1 怎样插入包含NULL值的记录
2.3.2 怎样插入包含单引号的数据
2.4 查看数据
2.4.1 选择特定的列
2.4.2 改变列的次序
2.4.3 利用表中数据进行计算
2.4.4 将两个或多个文本连接在一起
2.4.5 对列指定别名
2.5 小结
2.6 习题
2.7 习题答案
第3章 高级数据操纵
3.1 限定所选择的记录
3.1.1 基于数值过滤记录
3.1.2 基于文本过滤记录
3.1.3 基于日期过滤记录
3.2 改变记录顺序
3.3 显示唯一值
3.4 从DUAL中选择
3.5 更改表中的数据
3.6 删除表中的记录
3.6.1 删除匹配指定条件的行
3.6.2 删除所有的行
3.7 事务处理控制
3.7.1 撤消DML事务处理
3.7.2 使数据为其他人所用
3.7.3 隐式和显式的COMMIT
3.8 小结
3.9 习题
3.10 习题答案
第4章 控制SQL*Plus
4.1 编辑命令
4.1.1 使用文本编辑器
4.1.2 行编辑
4.2 复制和粘贴
4.3 清除SQL*Plus屏幕
4.4 定制SQL*Plus环境
4.4.1 用SQL*Plus菜单进行定制
4.4.2 使用命令进行定制
4.5 保存环境定制值
4.6 产生更可读的输出
4.6.1 在SQL*Plus中格式化数值
4.6.2 SQL*Plus中的格式化文本
4.6.3 格式化SQL*Plus的列标题
4.7 将输出结果假脱机到磁盘
4.8 SQL脚本文件
4.8.1 建立脚本文件
4.8.2 运行脚本文件
4.8.3 在脚本文件中使用变量
4.9 小结
4.10 习题
4.11 习题答案
第二部分 高级SQL
第5章 SQL函数
5.1 常用的单行函数
5.1.1 系统变量函数
5.1.2 数值函数
5.1.3 文本函数
5.1.4 日期函数
5.1.5 数据转换函数
5.1.6 其他函数
5.2 常用的分组函数
5.2.1 利用GROUP BY子句分组数据
5.2.2 利用HAVING子句包含和排除分组的行
5.3 小结
5.4 习题
5.5 习题答案
第6章 使用索引和约束条件
6.1 索引
6.1.1 数据库的索引
6.1.2 索引何时有用
6.1.3 如何建立索引
6.1.4 各种索引类型
6.2 保持数据的完整性:约束条件
6.2.1 什么是约束条件
6.2.2 怎样建立约束条件
6.2.3 启用和禁止已有的约束条件
6.2.4 更改和删除已有的约束条件
6.2.5 约束条件使用范围
6.3 表之间的关系
6.3.1 数据模型介绍
6.3.2 使用约束条件加强表之间的关系
6.3.3 编写SELECT语句显示多个表中的数据
6.3.4 外部连接
6.3.5 连接运算符
6.4 编写子查询
6.4.1 什么是子查询
6.4.2 子查询可以解决的问题类型
6.4.3 单行子查询
6.4.4 多行子查询
6.4.5 多列子查询
6.5 小结
6.6 习题
6.7 习题答案
第7章 其他有用的Oracle技术
7.1 在表之间传输数据
7.1.1 利用INSERT传输数据
7.1.2 基于已有的表建立新表
7.2 重新命名表
7.3 更改表的结构
7.3.1 增加列
7.3.2 更改列的数据类型
7.3.3 更改空值选项
7.4 视图
7.4.1 建立视图
7.4.2 删除视图
7.4.3 更改视图的定义
7.4.4 TOP N分析
7.5 其他数据库对象
7.5.1 序列
7.5.2 同义词
7.5.3 Oracle数据字典
7.6 小结
7.7 习题
7.8 习题答案
第三部分 用PL/SQL编程
第8章 PL/SQL
8.1 PL/SQL介绍
8.1.1 PL/SQL描述
8.1.2 PL/SQL、SQL和SQL*Plus之间的关系
8.1.3 存储过程、函数和触发器
8.1.4 存储过程和SQL脚本
8.2 PL/SQL块的结构
8.2.1 标题部分
8.2.2 定义部分
8.2.3 执行部分
8.2.4 异常部分
8.3 建立一个简单的PL/SQL过程
8.4 PL/SQL变量和常量
8.4.1 定义PL/SQL变量
8.4.2 定义PL/SQL常量
8.4.3 给变量赋值
8.4.4 使用变量
8.5 PL/SQL中的控制结构
8.5.1 IF语句
8.5.2 循环
8.5.3 游标
8.5.4 嵌套循环与游标例子
8.6 错误处理
8.6.1 异常
8.6.2 系统定义异常
8.6.3 程序员定义的异常
8.7 小结
8.8 习题
8.9 习题答案
第9章 其他PL/SQL工具
9.1 编码约定
9.2 关于PL/SQL和Oracle服务器的更多知识
9.2.1 定义动态变量和PL/SQL记录
9.2.2 PL/SQL中的DML或隐式游标
9.2.3 隐式游标与显式游标
9.3 计时操作
9.3.1 用一个程序来度量时间
9.3.2 使用TIMING命令记录实际的时间
9.4 PL/SQL程序包
9.5 触发器
9.5.1 触发器类型
9.5.2 触发器举例
9.5.3 修改触发器
9.5.4 关于触发器的要点
9.6 ODBC
9.6.1 建立ODBC连接
9.6.2 ODBC连接的应用
9.7 小结
9.8 习题
9.9 习题答案
术语