ORACLE8完全参考手册

ORACLE8完全参考手册
作 者: George Koch Kevin Loney 梅刚
出版社: 机械工业出版社
丛编项: Oracle技术系列丛书
版权说明: 本书为出版图书,暂不支持在线阅读,请支持正版图书
标 签: Oracle
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

暂缺《ORACLE8完全参考手册》作者简介

内容简介

Oracle是目前广泛使用的数据库管理系统,在各类计算机上它的功能一致,其优越性能已受到我国用户和软件开发人员的欢迎。本书是Oracle最全面的一部综合性参考资料,包括Oracle概念、命令、函数、特性、产品、语法等诸方面内容,以及用Ocacle进行开发的技术。无论是Oracle的最终用户还是数据库开发人员,它都是一本必备的工具书。本书适合数据库开发人员、管理人员及大专院校师生使用。

图书目录

目录

贺词

译者的话

前言

第一部分 必备的数据库概念

第1章 共享知识与成功

1.1 协同开发技术

1.2每个人都拥有数据

1.3Oracle语言

1.3.1信息表

1.3.2结构查询语言(SQL)

1.3.3简单的Oracle查询

1.3.4 关系的含义

1.4 一些日常的例子

1.5一个具有百年历史的例子

第2章 关系数据库中的风险

2.1真像他们所说的那么容易吗?

2.2有什么风险?

2.3新思维的重要性

2.4代码、缩写和命名标准

2.4.1为什么使用代码而不是英语

2.4.2用户反馈的益处

2.5如何减少混乱?

2.5.1规范化

2.5.2表和列的英文名称

2.5.3数据的英文名称

2.6名称和数据的大小写

2.7规范化的名称

2.8把握机会

第二部分SQL: 从入门到精通

第3章 SQL基础

3.1约定

3.2使用SQL从表中提取数据

3.3select,from,where和orderby

3.4逻辑与值

3.5LIKE

3.5.1对值的列表进行简单测试

3.5.2组合逻辑

3.6where的另一个用途——子查询

3.6.1单值子查询

3.6.2值列表子查询

3.7组合表

3.8建立视图

第4章 对象—关系数据库基础

4.1必须使用对象吗?

4.2为什么要使用对象?

4.3每个人都拥有对象

4.3.1抽象数据类型

4.3.2嵌套表

4.3.3可变数组

4.3.4大型对象

4.3.5引用

4.3.6对象视图

4.3.7对象的命名约定

4.4 一个普通的对象例子

4.4.1一个简单对象的结构

4.4.2向CUSTOMER表中插入记录

4.4.3查询抽象数据类型

4.5面向对象的分析与设计

4.6小结

第5章 基本的SQLPLUS报表和命令

5.1一个简单报表的建立

5.1.1remark

5.1.2setheadsep

5.1.3ttitle和btitle

5.1.4co1umn

5.1.5breakon

5.1.6computesum

5.1.7setlinesize

5.1.8setpagesize

5.1.9setnewpage

5.1.10spool

5.1.11

5.1.12对列标题的进一步说明

5.2其它特性

5.2.1 命令行编辑器

5.2.2setpause(页间暂停)命令

5.2.3save(保存SQL查询)命令

5.2.4编辑

5.2.5host(将命令传送给主机操作系统)

命令

5.2.6 增加SQLPLUS命令

5.2.7start(启动.SQL文件)命令

5.3 检测SQLPLUS环境

5.4小结

第6章 提取和修改文本信息

6.1 数据类型

6.2什么是串?

6.3函数的表示法

6.4 ∥(并置运算符)

6.5如何剪切和粘贴串

6.5.1RPAD(右填充)和LPAD(左填充)

函数

6.5.2LTRIM(左截断)和RTRIM

(右截断)函数

6.5.3组合使用两个函数

6.5.4 增加多个函数

6.5.5LOWER(小写转换)、UPPER(大

写转换)和INITCAP(首字母大写

转换)函 数

6.5.6 LENGTH(计算串长)函数

6.5.7SUBSTR(子串)函数

6.5.8INSTR(串搜索)函数

6.6 带串函数的orderby和where命令子句

6.6.1SOUNDEX(同音串搜索)函数

6.6.2本地语言支持

6.7 小结

第7章 处理数字

7.1数字函数的三种类型

7.2函数的表示法

7.3单值函数

7.3.1加、减、乘、除

7.3.2NULL(空值)

7.3.3NVL(空值替换)函数

7.3.4ABS(绝对值)函数

7.3.5CEIL(求最小整数)函数

7.3.6FLOOR(求最大整数)函数

7.3.7MOD(取模)函数

7.3.8POWER(求幂)函数

7.3.9SQRT(平方根)函数

7.3.10EXP,LN和LOG函数

7.3.11ROUND和TRUNC函数

7.3.12SIGN函数

7.3.13SIN,SINH,COSCOSH,TAN

和TANH函数

7.4组值函数

7.4.1组值函数中的空值(NULL)

7.4.2单值和组值函数的例子

7.4.3 AVG,COUNT,MAX,MIN和

SUM函数

7.4.4组值函数和单值函数的组合

7.4.5STDDEV和VARIANCE函数

7.4.6组值函数中的DISTINCT

7.5列表函数

7.6通过MAX或MIN查找行

7.7优先级和圆括号

7.8小结

第8章 日期:过去、现在及其差值

8.1日期运算

8.1.1系统日期(SysDate)

8.1.2两个日期之间的差值

8.1.3增加月份

8.1.4减去月份

8.1.5GREATEST和LEAST函数

8.1.6NEXT_DAY函数

8.1.7LAST_DAY函数

8.1.8用MONTHS_BETWEEN

处理两个日期

8.1.9组合日期函数

8.2 日期计算中的ROUND和TRUNC

函数

8.3TO_DATE和TO_CHAR的格式转换

8.3.1使用TO_CHAR函数时最常见的

错误

8.3.2NEW_TIME函数——时区转换

8.3.3使用TO_DATE函数进行计算

8.4 where子句中的日期

8.52000年带来的问题

第9章 转换和变换函数

9.1基本的转换函数

9.1.1数据类型的自动转换

9.1.2数据类型自动转换的注意事项

9.2特殊的转换函数

9.3变换函数

9.3.1TRANSLATE函数

9.3.2DECODE函数

9.4 小结

第10章 分组聚合

10.1groupby和having子句的用法

10.1.1orderby子句

10.1.2执行的顺序

10.2聚组视图

10.3聚组视图功能

10.3.1having子句中的逻辑

10.3.2用列和组函数排序

10.3.3列的连接

10.4小结

第11章 查询间的依赖关系

11.1高级子查询

11.1.1 相关子查询

11.1.2对等逻辑测试

11.1.3EXISTS(存在性测试)及其

相关子查询

11.2 外连接

11.2.1用外连接替代“NOTIN”

11.2.2用NOTEXISTS代替NOTIN

11.3UNION、INTERSECT和

MINUS运算符

11.3.1IN子查询

11.3.2UNION运算符

11.3.3INTERSECT运算符

11.3.4 MINUS运算符

11.3.5小结(关于UNIONINTERSECT

和MINUS的限制)

第12章 几个复杂功能

12.1创建复杂的视图

12.1.1组视图

12.1.2合计视图

12.1.3组合视图

12.2家族树(familytree)和connectby

子句

12.2.1排除单一体及分枝

12.2.2遍历至根

12.2.3基本规则

12.3在from子句中使用视图

第13章 在SQLPLUS中建立报表

13.1高级格式

13.1.1数字的格式问题

13.1.2breakon命令

13.1.3breakon命令中列的顺序

13.1.4行中的breakon命令

13.1.5增加视图

13.1.6 使用ttitle和btitle命令的列

13.1.7关于break和compute命令的

进一步说明

13.2settermoutoff和settermouton

命令

13.3SQLPLUS中的变量

13.4数字格式

13.5使用mask.sql

13.6使用缓冲区保存SQLPLUS命令

13.7showall命令及转储

13.8折到新的一行

13.9其他报表控制

第14章 改变数据:插入 修改和删除

14.1insert命令

14.1.1插入时间

14.1.2 带select子句的插入

14.2rollback(转返),commit提交)和

autocommit(自动提交)命令

14.2.1隐式提交

14.2.2自动转返

14.3delete(删除)命令

14.4update(修改)命令

14.4.1嵌入select语句的update命令

14.4.2用NULL(空值)进行修改

第15章 函数和变量的高级用途

15.1orderby子句中的函数

15.2直方图和图形

15.3使用TRANSLATE函数

15.3.1消去字符

15.3.2清除美元符号和逗号

15.4复杂的剪切和粘贴

15.5统计串在更大串中的出现次数

15.6变量和转储代换

15.6.1关于变量的一些其他情况

15.6.2有关set命令

第16章 DECODE——一个有特异功能的

函数

16.1if,then和else

16.2实例:发票

16.3表的转置

16.4在DECODE函数中使用MOD函数

16.5orderby和RowNum

16.6在then和else子句中的列和计算

16.7DECODE函数中的大于(GreaterThan)

小于(LessThen)和等于(Equal)

第17章 创建 删除 修改表与视图

17.1创建 个表

17.1.1 字符型列的宽度和数值型列

的精度

17.1.2插入中的截取

17.1.3创建表时受到的限制

17.1.4 约束的命名

17.2删除表

17.3修改表的结构

17.4创建视图

17.4.1视图的稳定性

17.4.2视图中的orderby子句

17.4.3创建只读视图

17.5从表中创建表

17.6创建一个Index-Only表

17.7使用分区的表

17.7.1创建分区的表

17.7.2索引分区

17.7.3管理分区的表

17.7.4 从分区中直接查询

第18章 权限

18.1用户、角色和权限

18.1.1创建用户

18.1.2口令管理

18.1.3三种标准角色

18.1.4grant(授权)命令的格式

18.1.5撤消权限

18.2用户可授予什么?

18.2.1用connect命令连接到其他用户

18.2.2创建同义词

18.2.3使用未授予的权限

18.2.4 传递权限

18.2.5创建角色

18.2.6给角色授权

18.2.7将一个角色授予另一个角色

18.2.8给角色增加口令

18.2.9删除角色的口令

18.2.10启用和禁用角色

18.2.11从角色撤消权限

18.2.12删除角色

18.2.13授权修改指定的列

18.2.14撤消权限

18.2.15用户安全性

18.2.16对公众授予访问权

18.3授予有限的资源

第19章 改变Oracle环境

19.1索引

19.1.1创建索引

19.1.2强制唯

19.1.3建立位图索引

19.1.4何时建立索引

19.1.5何时忽略索引

19.1.6索引列数据的变化

19.1.7一个表可使用多少索引

19.1.8在数据库中放置索引

19.1.9重建索引

19.2表空间和数据库结构

19.3簇(cluster)

19.4序列

第20章 SQLPLUS

20.1生成查询代码

20.2装载变量

20.2.1改变变量值

20.2.2在ttitle命令中使用变量

20.2.3字符串和日期

20.3建立并嵌套启动文件和命令

20.4小结

第21章 访问远程数据

21.1数据库链接

21.1.1数据库链接是如何工作的

21.1.2对远程查询使用数据库链接

21.1.3对同义词和视图使用数据库

链接

21.1.4 使用数据库链接进行远程

更新

21.1.5 数据库链接语法

21.2为地点透明性而使用同义词

21.3在视图中使用user伪列

21.4动态链接:使用SQLPLUScopy

命令

21.5链接一个远程数据库

21.6管理工具:Oracle*Names

第22章 PL/SQL介绍

22.1PL/SQL简介

22.2声明段

22.3可执行命令段

22.3.1条件逻辑

22.3.2循环

22.3.3Goto语句

22.4异常处理段

第23章 触发器

23.1所需的系统特权

23.2所需的表权限

23.3触发器类型

23.3.1行级别(Row-Level)触发器

23.3.2语句级别(Statement-Level)

触发器

23.3.3BEFORE和AFTER触发器

命令

23.3.4INSTEADOF触发器命令

23.3.5合法的触发器类型

23.4触发器语法

23.4.1合并触发器类型

23.4.2设置插入值

23.4.3维护数据复本

23.4.4定义错误条件

23.4.5触发器命名

23.5激活和取消触发器

23.6替代触发器

23.7删除触发器

第24章 过程

24.1必要的系统权限

24.2必要的表权限

24.3过程与函数的比较

24.4过程与包的比较

24.5创建过程的语法

24.6创建函数的语法

24.6.1在过程中引用远程表

24.6.2过程的调试

24.6.3创建用户自己的函数

24.6.4定制错误条件

24.6.5过程的命名

24.7创建包的语法

24.8查看当前过程对象的源代码

24.9编译过程、函数和包

24.10过程、函数和包的替换

24.11过程、函数和包的删除

第25章 类型、对象视图和方法的实现

25.1 再谈抽象数据类型

25.1.1 抽象数据类型的安全性

25.1.2索引抽象数据类型属性

25.2对象视图的实现

25.2.1通过对象视图的数据操作

25.2.2使用INSTEAD OF触发器

25.3方法(methods)

25.3.1创建方法的语法

25.3.2方法的管理

第26章 收集器(嵌套表和可变数组)

26.1可变数组(varing Arrays)

26.1.1创建一个可变数组

26.1.2可变数组的描述

26.1.3向可变数组中插入数据

26.1.4 从可变数组中提取数据

26.2嵌套表

26.2.1向嵌套表中插入记录

26.2.2查询嵌套表

26.3嵌套表和可变数组的管理

26.3.1对大型收集器的管理

26.3.2 收集器中的可变性

26.3.3数据的存放位置

第27章 在Oracle8中使用大型对象

(LOB)

27.1可用的数据类型

27.2对LOB数据指定存储

27.3操作和检索LOB数值

27.3.1初始化值

27.3.2带子查询的数据输入

27.3.3更新LOB值

27.3.4 使用DBMS_LOB来操作

LOB值

27.3.5删除LOBs

第28章 快照

28.1快照的功能

28.2所需的系统权限

28.3所需的表权限

28.4 简单的和复杂的快照

28.5只读和可更新的快照

28.6创建快照的语法

28.6.1ROWID和基于主键的数据库

快照

28.6.2本地和远程对象的创建

28.7刷新数据库快照

28.7.1自动刷新

28.7.2手工刷新

28.7.3使用快照刷新组(Refresh

Groups)

28.8快照和触发器

28.9创建快照日志的语法

28.9.1必要的系统权限

28.9.2生成本地和远程对象

28.10 查看当前数据库快照的信息

28.11 改变快照和快照日志

28.12 删除快照和快照日志

第29章 使用上下文进行文本搜索

29.1在数据库中添加文本

29.2从数据库中查询文本

29.2.1上下文查询

29.2.2可用的上下文查询表达式

29.2.3单个词精确匹配搜索

29.2.4多个词的精确匹配搜索

29.2.5词组的精确匹配搜索

29.2.6相近词的搜索

29.2.7在搜索中使用通配符

29.2.8具有相同词根词的搜索

29.2.9模糊匹配搜索

29.2.10 读音相似词的搜索

29.2.11 组合搜索方法

29.3配置上下文选项

第30章 配置上下文选项

30.1为文本搜索设置数据库

30.1.1 init.ora文件的修改

30.1.2必要的角色

30.2为上下文查询设置表

30.2.1显示和修改选项

30.2.2建立文本索引

30.3优化文本索引

30.4两步查询

30.5使用语言服务

第31章 Oracle8中高级面向对象概念

31.1行对象与列对象

31.2对象表和OIDs

31.2.1向对象表中插入记录

31.2.2从对象表中查询数据

31.2.3 对象表中记录的修改和删除

31.2.4REF操作符

31.2.5使用DEREF操作符

31.2.6VALUE操作符

31.2.7无效的引用

31.3带有REF的对象视图

31.3.1对象视图的快速回顾

31.3.2涉及引用的对象视图

31.4 对象PL/SQL

31.5数据库中的对象

第三部分 Oracle8数据字典

第32章 Oracle8数据字典简要指南

32.1命名说明

32.2数据地图:DICTIONARY(DCT)和

DICT_COLUMNS

32.3从何处选择:表(及列)视图

同义词,和序列

32.3.1目录:USER_CATALOG

(CAT)

32.3.2对象:USER_OBJECTS

(OBJ)

32.3.3表:USER_TABLES(TABS)

32.3.4 列:USER_TAB_COLUMNS

(COLS)

32.3.5视图:USER_VIEWS

32.3.6同义词:USERSYNONYMS

(SYN)

32.3.7序列:USER_SEQUENCES

(SEQ)

32.4 限定和注释

姬.4.1限定:USER_CONSTRAI-

NTS

32.4.2限定列:USER_CONS_CO-

LUMNS

32.4.3限定特例:EXCEPTIONS

32.4.4 表注释:USER_TAB_CO-

MMENTS

32.4.5列注释:USER_COL_CO-

MMENTS

32.5索引和簇

32.5.1索引:USER_INDEXES

(IND)

32.5.2索引列:USER_IND_CO-

LUMNS

32.5.3簇:USER_CLUSTERS

(CLU)

32.5.4 簇列:USER_CLU_CO

LUMNS

32.6 Oracle8-特定的对象

32.6.1抽象数据类型

32.6.2 LOBs

32.7数据库链接和快照

32.7.1数据库链接:USER_DB_LI-

NKS

32.7.2快照:USER_SNAPSHOTS

32.7.3快照日志:USER_SNAP-

SHOTLOGS

32.8触发器、过程、函数和包

32.8.1触发器:USER_TRIGGERS

32.8.2过程、函数和包:

USERS0URCE

32.9空间分配与使用,包括分区

32.9.1表空间:USER_TABLE-

SPACES

32.9.2 空间限额:USER_TS_QU

OTA S

32.9.3 段与区域:USER_SEGMENTS和

USEREXTENTS

32.9.4 分区

32.9.5自由空间:USER_FREE_

SPACE

32.10 用户与权限

32.10.1用户:USER_USERS

32.10.2资源限制:USER_RESOUR-

CELIMITS

32.10.3表权限:USER_TAB_PR-

IVS

32.10.4 系统权限:USER_SYS_

PRIVS

32.11 角色

32.12审计

32.13监控:V$动态性能表

32.14 其它

32.14.1CHAINED_ROWS

32.14.2PLAN一TABLE

32.14.3相互信赖性:USER_DEPEN

DENCIES和IDEPTREE

32.14.4 DBA(数据库管理员)专用

视图

32.14.5可信的Oracle数据库

32.14.6SQL*LOADER(载入器)直接载入

视图

32.14.7 本地语言支持(NLS)视图

32.14.8库

第四部分 讲究效率的设计方法

第33章 良好的设计具有好的技巧

33.1理解应用任务

33.2理解数据

33.2.1原子数据模型

33.2.2原子业务模型

33.3业务模型

33.4 数据项

33.5查询和报表

33.6 小结

第34章 性能与设计

34.1规范分解与数据完整性

34.1.1有意义的关键字

34.1.2实际的规范分解

34.1.3 行、列和容量

34.1.4 内存约束

34.1.5 厨房中的杂物抽屉

34.1.6 真的应该做这些吗?

34.2计算表

34.3 总结

第35章 良好设计的十条戒律

35.1面向对象的命名规范

35.1.1级别-命名完整性

35.1.2外关键字

35.1.3单数性

35.1.4 简洁性

35.1.5 对象名称字典

35.2 智能关键字和列值

35.3戒律

第36章 Oracle优化器简介

36.1哪个优化器?

36.2访问表操作

36.2.1全表访问

36.2.2 通过ROWID的表访问

36.2.3相关提示

36.3使用索引操作

36.3.1唯一索引扫描

36.3.2 索引范围扫描

36.3.3何时使用索引

36.3.4 多索引扫描的输出合并

36.3.5相关提示

36.3.6 对索引的附加调整问题

36.4控制数据集合的操作

36.4.1行排序

36.4.2行分组

36.4.3使用RowNum的操作

36.4.4 UNION MINUS和INTERSECT

函数

36.4.5选择行更新操作

36.4.6从视图中选取操作

36.4.7从子查询中选取数据操作

36.4.8相关的提示和参数

36.4.9另外的性能优化问题

36.5执行联合的操作

36.5.1Oracle如何处理两个表以

上的联合

36.5.2联合合并

36.5.3嵌套循环(NESTEDLOOPS)

36.5.4 HASH JOIN

36.5.5外部联合处理

36.5.6相关提示

36.5.7附加的性能优化问题

36.6显示执行路径

36.6.1使用setautotraceon命令

36.6.2使用命令explainplan

36.7其他操作

36.7.1过滤行(Filtering Rows)操作

36.7.2使用connect by子句的操作

36.7.3使用sequences的查询

36.7.4 使用数据库链接的查询

36.7.5使用簇的查询

36.7.6相关提示

36.7.7附加的性能调整问题

36.8总结

第五部分 参考手册

第37章 按字母顺序排列的参考

37.1本参考包括的内容

37.2本参考不包括的内容

37.3一般格式

37.3.1各条目的主要部分

37.3.2变量的标准用法

37.3.3其他有关格式的规定

37.3.4条目的其他成份

37.4列表顺序

第六部分 附 录

附录A 本书中用到的表

A.1使用本书中的表

A.2activity.sql启动文件

A.3math.sql启动文件

A.4 ADDRESS_TY类型

A.5ANIMAL_TY类型

A.6PERSON_TY类型

A.7TOOLS_VA类型

A.8ADDRESS表

A.9AREAS表

A.10 ASOF表

A.11 BIRTHDAY表

A.12BORROWER表

A.13BREEDER表

A.14 BREEDING表

A.15 CD表

A.16COMFORT 表

A.17COMMA表

A.18 CUSTOMER表

A.19EMPTY表

A.20 HOCKEY表

A.21 HOLIDAY表

A.22 INVOICE表

A.23 LEDGER表

A.24 LOCATION表

A.25 LODGING表

A.26LONGTIME表

A.27MAGAZINE表

A.28 MATH表

A.29 NAME表

A.30 NEWSPAPER表

A.31 NUMBERTEST表

A.32 PAY表

A.33 PAYDAY表

A.34 PROPOSAL表

A.35PROSPECT表

A.36RADIUS_VALS表

A.37 ROSE 表

A.38 SHIPPING表

A.39 SKILL表

A.40 STOCK表

A.41TROUBLE表

A.42 TWONAME表

A.43 WEATHER表

A.44 WORKER表

A.45 WORKERSKILL表