图书介绍

Oracle Database 10g AQL开发指南【2025|PDF下载-Epub版本|mobi电子书|kindle百度云盘下载】

Oracle Database 10g AQL开发指南
  • (美)普里斯(JasonPrice)著;冯锐,由渊霞译 著
  • 出版社: 北京:清华大学出版社
  • ISBN:7302104875
  • 出版时间:2005
  • 标注页数:480页
  • 文件大小:30MB
  • 文件页数:503页
  • 主题词:关系数据库-数据库管理系统,Oracle

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Oracle Database 10g AQL开发指南PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

目录1

第1章 简介1

1.1 关系数据库简介1

1.2 结构化查询语言(SQL)简介2

1.3 使用SQL*Plus3

1.3.1 启动Windows版本的SQL*Plus4

1.3.2 启动命令行版本的SQL*Plus4

1.4 使用SQL*Plus执行SELECT语句5

1.5 SQL*Plus Worksheet6

1.6 创建store模式7

1.6.1 运行SQL*Plus脚本创建store模式7

1.6.2 用来创建store模式的DDL语句8

1.7 添加、修改、删除行15

1.7.1 向表中添加行15

1.7.2 修改表中的现有行16

1.7.3 从表中删除行17

1.8 Oracle 10g的新数据类型BINARY_FLOAT和BINARY_DOUBLE17

1.8.1 BINARY_FLOAT和BINARY_DOUBLE的优点17

1.8.2 在表中使用BINARY_FLOAT和BINARY_DOUBLE18

1.8.3 特殊值18

1.9 退出SQL*Plus19

1.10 Oracle PL/SQL简介19

1.11 小结20

第2章 从数据库表中检索信息23

2.1 对单表执行SELECT语句23

2.2 选择一个表中的所有列24

2.3 理解行标识符25

2.4 执行算术运算25

2.4.1 日期运算26

2.4.2 列运算27

2.5 使用列别名28

2.6 使用串连操作合并列的输出结果29

2.7 理解空值29

2.8 禁止显式重复行31

2.9 使用WHERE子句过滤行32

2.9.1 使用比较操作符32

2.9.2 使用SQL操作符34

2.9.3 使用逻辑操作符36

2.9.4 理解操作符的优先级37

2.10 使用ORDER BY子句对行进行排序37

2.11 执行使用两个表的SELECT语句39

2.12 使用表别名41

2.13 笛卡尔积41

2.14 执行使用多于两个表的SELECT语句42

2.15 理解连接条件和连接类型43

2.15.1 理解不等连接43

2.15.2 理解外连接44

2.15.3 理解自连接47

2.16 使用SQL/92语法执行连接48

2.16.1 使用SQL/92标准语法执行两个表的内连接48

2.16.2 使用USING关键字简化连接49

2.16.3 使用SQL/92执行多于两个以上表的内连接50

2.16.4 使用SQL/92执行多列的内连接50

2.16.5 使用SQL/92执行外连接50

2.16.6 使用SQL/92执行自连接52

2.16.7 使用SQL/92执行交叉连接52

2.17 小结53

第3章 使用简单函数55

3.1 使用单行函数56

3.1.1 字符函数56

3.1.2 数字函数64

3.1.3 转换函数69

3.1.4 正则表达式函数74

3.2 使用聚合函数78

3.2.1 AVG()函数79

3.2.2 COUNT()函数80

3.2.3 MAX()和MIN()函数80

3.2.4 STDDEV()函数81

3.2.5 SUM()函数81

3.2.6 VARIANCE()函数82

3.3 对行进行分组82

3.3.1 使用GROUP BY子句对行进行分组82

3.3.2 调用聚合函数的错误用法85

3.3.3 使用HAVING子句过滤行分组86

3.3.4 组合使用WHERE和GROUP BY子句86

3.3.5 组合使用WHERE、GROUP BY和HAVING子句87

3.4 小结88

4.1 几个简单的存储和检索日期的例子89

第4章 日期和时间的存储与处理89

4.2 使用TO_CHAR()和TO DATE()转换时间值91

4.2.1 使用TO_CHAR()将时间值转换为字符串91

4.2.2 使用TO_DATE()将字符串转换为时间值95

4.3 设置默认的日期格式98

4.4 Oracle对2位年份的处理99

4.4.1 使用YY格式99

4.4.2 使用RR格式99

4.5 使用时间值函数101

4.5.1 ADD_MONTHS()函数101

4.5.2 LAST_DAY()函数102

4.5.3 MONTHS_BETWEEN()102

4.5.4 NEXT_DAY()函数103

4.5.5 ROUND()函数103

4.5.7 TRUNC()函数104

4.5.6 SYSDATE()函数104

4.6 理解时区105

4.6.1 与时区有关的函数106

4.6.2 数据库时区和会话时区106

4.6.3 获取时区的时差107

4.6.4 获取时区名107

4.6.5 将时间值从一个时区转换为另个时区108

4.7 使用时间戳108

4.7.1 使用TIMESTAMP类型108

4.7.2 与时间戳有关的函数112

4.8 使用时间间隔116

4.8.1 使用INTERVAL YEAR TO MONTH类型117

4.8.2 使用INTERVAL DAY TO SECOND类型119

4.8.3 与时间间隔有关的函数121

4.9 小结122

5.1 查看表结构123

第5章 使用SQL*Plus123

5.2 编辑SQL语句124

5.3 保存、检索并运行文件126

5.4 格式化列128

5.5 设置页面大小130

5.6 设置行大小131

5.7 清除列格式131

5.8 使用变量132

5.8.1 临时变量132

5.8.2 已定义变量135

5.9 创建简单报表137

5.9.1 在脚本中使用临时变量137

5.9.2 在脚本中使用已定义变量137

5.9.3 脚本中的变量传递值138

5.9.4 添加页眉和页脚139

5.9.5 计算小计140

5.10 自动生成SQL语句141

5.11 小结142

第6章 子查询143

6.1 子查询的类型143

6.2 编写单行子查询144

6.2.1 在WHERE子句中使用子查询144

6.2.2 在HAVING子句中使用子查询145

6.2.3 在FROM子句中使用子查询(内联视图)146

6.2.4 可能碰到的两个错误147

6.3 编写多行子查询148

6.3.1 在多行子查询中使用IN操作符148

6.3.2 在多行子查询中使用ANY操作符149

6.3.3 在多行子查询中使用ALL操作符149

6.4 编写多列子查询150

6.5 编写关联子查询150

6.5.1 关联子查询的例子150

6.5.2在关联子查询中使用EXISTS和NOTEXISTS151

6.6 编写嵌套子查询153

6.7 编写包含子查询的UPDATE和DELETE语句155

6.7.1 编写包含子查询的UPDATE语句155

6.7.2 编写包含子查询的DELETE语句155

6.8 小结156

第7章 高级查询157

7.1 使用集合操作符158

7.1.1 示例表158

7.1.2 使用UNION ALL操作符159

7.1.3 使用UNION操作符160

7.1.4 使用INTERSECT操作符161

7.1.5 使用MINUS操作符161

7.1.6 组合使用集合操作符162

7.2 使用TRANSLATE()函数163

7.3 使用DECODE()函数164

7.4.1 使用简单CASE表达式166

7.4 使用CASE表达式166

7.4.2 使用搜索CASE表达式167

7.5 层次化查询168

7.5.1 示例数据168

7.5.2 使用CONNECT BY和START WITH子句170

7.5.3 使用伪列LEVEL171

7.5.4 格式化层次化查询的结果171

7.5.5 从非根节点开始遍历172

7.5.6 在START WITH子句中使用子查询173

7.5.7 从下向上遍历树173

7.5.8 从层次查询中删除节点和分支174

7.5.9 在层次化查询中加入其他条件175

7.6 使用扩展的GROUP BY子句175

7.7 使用ROLLUP子句177

7.7.1 使用CUBE子句179

7.7.2 使用GROUPING()函数181

7.7.3 使用GROUPING SETS子句183

7.7.4 使用GROUPING_ID()函数184

7.7.5 在GROUP BY子句中多次使用一个列186

7.7.6 使用GROUP_ID()函数186

7.8 使用分析函数187

7.8.1 示例表188

7.8.2 使用评级函数189

7.8.3 使用反百分点函数195

7.8.4 使用窗口函数196

7.8.5 使用报表函数201

7.8.6 使用LAG()和LEAD()函数203

7.8.7 使用FIRST和LAST函数204

7.8.8 使用线性回归函数204

7.8.9 使用假想评级与分布函数205

7.9.1 示例MODEL子句206

7.9 使用MODEL子句206

7.9.2 用位置标记和符号标记访问数据单元208

7.9.3 用BETWEEN和AND返回特定范围内的数据单元208

7.9.4 用ANY和IS ANY访问所有的数据单元209

7.9.5 用CURRENTV()获取某个维度的当前值209

7.9.6 用FOR循环访问数据单元210

7.9.7 处理空值和缺失值212

7.9.8 更新已有的单元214

7.10 小结215

第8章 修改表的内容217

8.1 使用INSERT语句添加行217

8.1.1 忽略列的列表218

8.1.2 为列指定空值219

8.1.3 在列值中使用单引号和双引号219

8.1.4 从一个表向另外一个表复制行219

8.2 使用UPDATE语句修改行220

8.3 使用DELETE语句删除行221

8.4 数据库的完整性222

8.4.1 主键约束222

8.4.2 外键约束222

8.5 使用默认值223

8.6 使用MERGE合并行225

8.7 数据库事务227

8.7.1 事务的提交和回滚227

8.7.2 事务的开始与结束228

8.7.3 保存点229

8.7.4 事务的ACID特性230

8.7.5 并发事务230

8.7.6 事务锁232

8.7.7 事务隔离级别232

8.7.8 SERIALIZABLE事务隔离性级别的一个例子233

8.8.2 时间查询闪回234

8.8 查询闪回234

8.8.1 使用闪回的授权234

8.8.3 系统变更号查询闪回236

8.9 小结237

第9章 数据库安全性239

9.1 用户239

9.1.1 创建用户240

9.1.2 修改用户密码241

9.1.3 删除用户241

9.2 系统特权241

9.2.1 向用户授予系统特权242

9.2.2 检查授予用户的系统特权243

9.2.3 使用系统特权244

9.2.4 撤销用户的系统特权244

9.3 对象特权244

9.3.2 检查已授予的对象特权245

9.3.1 向用户授予对象特权245

9.3.3 检查已接受的对象特权247

9.3.4 使用对象特权249

9.3.5 同名对象249

9.3.6 公共同名对象250

9.3.7 撤销用户的对象特权251

9.4 角色251

9.4.1 创建角色251

9.4.2 为角色授权252

9.4.3 将角色授予用户252

9.4.4 检查授予用户的角色253

9.4.5 检查授予角色的系统特权254

9.4.6 检查授予角色的对象特权254

9.4.8 默认角色256

9.4.7 使用授予角色的特权256

9.4.9 撤销角色257

9.4.10 从角色中撤销特权257

9.4.11 删除角色257

9.5 小结257

第10章 创建表、序列、索引和视图259

10.1 表259

10.1.1 创建表260

10.1.2 获得有关表的信息261

10.1.3 获得表中列的信息262

10.1.4 修改表263

10.1.5 重命名表271

10.1.6 向表添加注释271

10.2.1 创建序列272

10.2 序列272

10.1.8 删除表272

10.1.7 截断表272

10.2.2 获取有关序列的信息274

10.2.3 使用序列275

10.2.4 使用序列填充主键276

10.2.5 修改序列277

10.2.6 删除序列278

10.3 索引278

10.3.1 创建索引278

10.3.2 创建基于函数的索引279

10.3.3 获取有关索引的信息280

10.3.4 获取列索引的信息281

10.3.5 修改索引281

10.3.6 删除索引281

10.4 视图282

10.4.1 创建并使用视图282

10.4.3 删除视图289

10.4.2 修改视图289

10.5 小结290

第11章 PL/SQL编程简介291

11.1 块结构292

11.2 变量和类型293

11.3 条件逻辑294

11.4 循环294

11.4.1 简单循环295

11.4.2 WHILE循环295

11.4.3 FOR循环295

11.5 游标296

11.5.1 步骤1:声明用于保存列值的变量296

11.5.2 步骤2:声明游标297

11.5.3 步骤3:打开游标297

11.5.4 步骤4:从游标中取得记录297

11.5.6 完整的实例:product_cursor.sql298

11.5.5 步骤5:关闭游标298

11.5.7 游标与FOR循环300

11.6 异常301

11.6.1 ZERO_DIVIDE异常302

11.6.2 DUP_VAL_ON_INDEX异常303

11.6.3 INVALID_NUMBER异常303

11.6.4 OTHERS异常303

11.7 过程304

11.7.1 创建过程304

11.7.2 调用过程307

11.7.3 获取有关过程的信息307

11.7.4 删除过程308

11.7.5 查看过程中的错误308

11.8 函数309

11.8.1 创建函数309

11.8.3 获取有关函数的信息310

11.8.2 调用函数310

11.9 包311

11.9.1 创建包规范311

11.8.4 删除函数311

11.9.2 创建包体312

11.9.3 调用包中的函数和过程313

11.9.4 获取有关包中函数和过程的信息314

11.9.5 删除包314

11.10 触发器314

11.10.1 触发器运行的时机314

11.10.2 设置示例触发器315

11.10.3 创建触发器315

11.10.4 激活触发器316

11.10.5 获取有关触发器的信息317

11.10.7 删除触发器319

11.11 小结319

11.10.6 禁用和启用触发器319

第12章 数据库对象321

12.1 对象简介321

12.2 创建对象类型322

12.3 使用DESCRIBE获取有关对象类型的信息324

12.4 用对象类型定义列对象和对象表325

12.5 对products表执行DML操作325

12.5.1 将记录插入到products表中326

12.5.2 从products表中查询记录326

12.5.3 修改products表中的记录327

12.5.4 从products表中删除记录327

12.6 对object_products表执行DML327

12.6.1 向object_products表中插入记录328

12.6.2 从object_products表中选择记录328

12.6.3 更新object_products表中的记录328

12.7.2 从object_customers表中查询记录329

12.7.1 向object_customers表中插入记录329

12.6.4 从object_products表中删除记录329

12.7 对object_customers表执行DML329

12.8 对purchases表执行DML330

12.8.1 向purchases表中插入记录331

12.8.2 从purchases表中选择记录331

12.8.3 更新purchases表中的记录332

12.9 在PL/SQL中使用对象332

12.10 类型继承334

12.11 NOT INSTANTIABLE对象类型335

12.12 用户自定义的构造函数336

12.13 小结339

第13章 集合341

13.1 集合简介341

13.2.1 创建变长数组类型342

13.2 变长数组342

13.2.2 使用变长数组类型定义表列343

13.2.3 获得变长数组信息343

13.2.4 填充变长数组元素344

13.2.5 查找变长数组元素345

13.2.6 更改变长数组元素345

13.3 嵌套表345

13.3.1 创建嵌套表类型346

13.3.2 使用嵌套表类型定义表列346

13.3.3 获得嵌套表信息346

13.3.4 填充嵌套表元素348

13.3.5 查找嵌套表元素348

13.3.6 更改嵌套表元素348

13.4 多级集合类型349

13.5.1 操作变长数组351

13.5 在PL/SQL中使用集合351

13.5.2 操作嵌套表353

13.5.3 集合方法355

13.6 Oracle 10g对集合的改进362

13.6.1 关联数组362

13.6.2 更改元素类型的大小或精度363

13.6.3 增加变长数组的元素数目363

13.6.4 在临时表中使用变长数组363

13.6.5 为嵌套表的存储表使用不同的表空间364

13.6.6 对嵌套表的ANSI支持364

13.7 小结372

第14章 大对象373

14.1 大对象(LOB)简介373

14.2 示例文件374

14.3 理解大对象类型374

14.4 创建包含大对象的表375

14.5.1 使用CLOB和BLOB376

14.5 在SQL中使用大对象376

14.5.2 使用 BFILE377

14.6 在PL/SQL中使用大对象379

14.6.1 READ()380

14.6.2 WRITE()383

14.6.3 APPEND()384

14.6.4 CLOSE()386

14.6.5 COMPARE()386

14.6.6 COPY()388

14.6.7 CREATETEMPORARY()390

14.6.8 ERASE()391

14.6.9 FILECLOSE()392

14.6.10 FILECLOSEALL()393

14.6.11 FILEEXISTS()393

14.6.13 FILEISOPEN()394

14.6.12 FILEGETNAME()394

14.6.14 FILEOPEN()395

14.6.15 FREETEMPORARY()396

14.6.16 GETCHUNKSIZE()396

14.6.17 GET_STORAGE_LIMIT()397

14.6.18 GETLENGTH()397

14.6.19 INSTR()397

14.6.20 ISOPEN()400

14.6.21 ISTEMPORARY()400

14.6.22 LOADFROMFILE()401

14.6.23 LOADBLOBFROMFILE()404

14.6.24 LOADCLOBFROMFILE()405

14.6.25 OPEN()405

14.6.26 SUBSTR()406

14.6.27 TRIM()407

14.7 理解LONG和LONG RAW类型408

14.6.28 WRITEAPPEND()408

14.7.1 示例表409

14.7.2 使用LONG和LONG RAW列409

14.8 Oracle 10g对大对象的增强410

14.8.1 CLOB和NCLOB对象之间的隐式转换410

14.8.2 在触发器中使用LOB时:new属性的用法411

14.9 小结412

第15章 使用Java运行SQL413

15.1 准备工作414

15.2 配置计算机414

15.2.1 设置ORACLE_HOME环境变量414

15.2.2 设置JAVA_HOME环境变量415

15.2.3 设置PATH环境变量415

15.3 Oracle JDBC驱动程序416

15.2.5 设置LD_LIBRARAY_PATH环境变量416

15.2.4 设置CLASSPATH环境变量416

15.3.1 Thin驱动程序417

15.3.2 OCI驱动器417

15.3.3 服务器端内部驱动器417

15.3.4 服务器端Thin驱动器417

15.4 导入JDBC包417

15.5 注册Oracle JDBC驱动程序418

15.6 打开数据库连接418

15.6.1 使用DriverManager类的getConnection()方法连接数据库418

15.6.2 使用Oracle数据源连接数据库420

15.7 创建JDBC Statement对象422

15.8 从数据库检索列423

15.8.1 步骤1:创建和填充ResultSet对象423

15.8.2 步骤2:从ResultSet对象中读取列值424

15.9 向数据库添加行426

15.8.3 步骤3:关闭ResultSet对象426

15.10 更改数据库的行427

15.11 删除数据库的行427

15.12 处理数字428

15.13 处理数据库Null值429

15.14 控制数据库事务430

15.15 执行DDL语句431

15.16 处理异常432

15.17 关闭JDBC对象433

15.18 示例程序:BasicExampleljava434

15.18.1 编译BasicExamplel439

15.18.2 运行BasicExamplel439

15.19 预备SQL语句441

15.20 Oracle JDBC扩展446

15.20.1 oracle.sql包446

15.20.2 oraclejdbc包450

15.20.3 示例程序:BasicExample3java453

15.21 小结456

第16章 SQL优化457

16.1 SQL优化简介457

16.2 使用WHERE子句过滤行458

16.3 使用表连接而不是多个查询458

16.4 执行连接时使用完全限定的列引用459

16.5 使用CASE表达式而不是多个查询460

16.6 添加表索引461

16.7 使用WHERE而不是HAVING461

16.8 使用UNION ALL而不是UNION462

16.9 使用EXISTS而不是IN464

16.10 使用EXISTS而不是DISTINCT464

16.11 使用绑定变量465

16.11.1 不相同的SQL语句465

16.11.2 使用绑定变量定义相同SQL语句466

16.11.3 列出和输出绑定变量467

16.11.4 使用绑定变量存储PL/SQL函数的返回值467

16.11.5 使用绑定变量存储REFCURSOR的行467

16.12 比较执行查询的成本468

16.12.1 检查执行计划468

16.12.2 比较执行计划473

16.13 为优化器传递提示474

16.14 其他优化工具474

16.14.1 Statspack包474

16.14.2 Oracle Enterprise Manager Diagnostics Pack475

16.14.3 自动数据库诊断监控475

16.15 小结475

附录A Oracle数据类型477

A.1 Oracle SQL类型477

A.2 Oracle PL/SQL类型479

热门推荐