图书目录

目    录

 

第1章  数据库概述 1

1.1  数据库系统概述 1

1.1.1  数据库与数据库管理系统

简介 2

1.1.2  数据库系统简介 3

1.1.3  数据库管理技术的发展 3

1.2  数据库系统结构 4

1.2.1  数据库系统的三级模式结构 5

1.2.2  数据库的二级映像功能和数据

独立性 6

1.2.3  数据库管理系统的工作过程 6

1.3  常用数据库简介 7

1.3.1  关系型数据库 8

1.3.2  非关系型数据库 9

1.3.3  云数据库 11

1.4  Oracle数据库简介 12

1.4.1  Oracle数据库的发展历程 12

1.4.2  Oracle数据库的特点 13

1.4.3  Oracle数据库的工作模式 13

1.4.4  Oracle数据库的应用结构 14

1.5  国产数据库简介 16

1.5.1  国产数据库的发展现状 16

1.5.2  华为数据库简介 17

1.6  本章小结 18

1.7  习题与实践练习 18

第2章  数据模型 20

2.1  数据模型简介 20

2.1.1  数据模型的概念 21

2.1.2  数据模型的三要素 21

2.2  概念模型 22

2.2.1  基本概念 22

2.2.2  概念模型的E-R图表示 23

2.3  逻辑模型 26

2.3.1  层次模型 26

2.3.2  网状模型 27

2.3.3  关系模型 28

2.3.4  面向对象模型 28

2.4  概念模型向逻辑模型的转换 29

2.5  本章小结 31

2.6  习题与实践练习 32

第3章  关系模型与关系代数 34

3.1  关系模型 34

3.1.1  关系数据结构 34

3.1.2  关系操作 38

3.1.3  关系的完整性 38

3.2  关系代数及其运算 41

3.2.1  关系的数学定义 41

3.2.2  关系代数概述 43

3.2.3  传统的集合运算 43

3.2.4  专门的关系运算 45

3.3  关系演算 47

3.3.1  元组关系演算 47

3.3.2  域关系演算 48

3.4  关系代数表达式的优化 49

3.5  SQL简介 49

3.6  本章小结 50

3.7  习题与实践练习 50

第4章  关系型数据库设计理论 53

4.1  关系型数据库设计理论概述 53

4.2  函数依赖 55

4.2.1  函数依赖的概念 55

4.2.2  函数依赖的类型 56

4.2.3  FD公理 57

4.2.4  属性集闭包 57

4.2.5  F的最小依赖集Fm 58

4.2.6  候选码求解 59

4.3  关系模式的范式及规范化 60

4.3.1  1NF 61

4.3.2  2NF 62

4.3.3  3NF 63

4.3.4  BCNF 63

4.3.5  4NF 64

4.4  关系模式的分解 65

4.4.1  无损连接的分解 65

4.4.2  保持函数依赖的分解 67

4.4.3  模式分解算法 68

4.5  本章小结 70

4.6  习题与实践练习 71

第5章  数据库设计 73

5.1  数据库设计概述 73

5.1.1  数据库设计的相关内容 73

5.1.2  数据库设计的特点 74

5.1.3  数据库设计方法分类 75

5.1.4  数据库设计的6个阶段 75

5.2  需求分析 78

5.2.1  需求描述与分析 79

5.2.2  需求分析的分类 79

5.2.3  需求分析的内容与方法 79

5.2.4  需求分析的步骤 80

5.2.5  数据字典 82

5.3  概念结构设计 83

5.3.1  概念结构设计的必要性与

要求 83

5.3.2  概念结构设计的方法与步骤 84

5.3.3  采用E-R模型设计概念结构的

方法 86

5.4  逻辑结构设计 90

5.4.1  E-R图向关系模型的转换 90

5.4.2  关系模式的规范化 91

5.4.3  模式评价与改进 91

5.5  物理结构设计 92

5.5.1  物理结构设计的相关内容和

方法 92

5.5.2  评价物理结构 94

5.6  数据库实施 94

5.7  数据库运行和维护 95

5.8  本章小结 96

5.9  习题与实践练习 96

第6章  数据库开发环境 99

6.1  Oracle 18c数据库的新特性 99

6.2  Oracle 18c数据库的安装 101

6.2.1  安装要求和软件下载 101

6.2.2  Oracle 18c数据库的

安装步骤 102

6.3  Oracle数据库开发工具 106

6.3.1  SQL Developer 106

6.3.2  SQL*Plus 107

6.3.3  Oracle Enterprise Manager 111

6.4  Oracle 18c数据库的卸载 112

6.4.1  停止所有的Oracle服务 113

6.4.2  卸载所有的Oracle组件 113

6.4.3  手动删除Oracle的

残留部分 113

6.5  本章小结 116

6.6  习题与实践练习 116

第7章  Oracle数据库体系结构 118

7.1  物理存储结构 118

7.1.1  数据文件 119

7.1.2  控制文件 120

7.1.3  日志文件 121

7.1.4  其他文件 122

7.2  逻辑存储结构 122

7.2.1  表空间 123

7.2.2  段 124

7.2.3  区 125

7.2.4  数据块 125

7.3  内存结构 126

7.3.1  系统全局区 126

7.3.2  程序全局区 128

7.4  进程结构 129

7.5  数据字典 133

7.5.1  静态数据字典 133

7.5.2  动态数据字典 135

7.6  本章小结 137

7.7  习题与实践练习 138

第8章  表空间和数据文件管理 140

8.1  Oracle数据库的逻辑结构 140

8.2  表空间和数据文件概述 141

8.3  表空间中的磁盘空间管理 143

8.4  创建表空间 144

8.4.1  创建永久表空间 145

8.4.2  创建临时表空间 147

8.4.3  创建撤销表空间 147

8.4.4  创建非标准块表空间 147

8.4.5  创建大文件表空间 148

8.5  维护表空间和数据文件 149

8.5.1  重命名表空间和数据文件 149

8.5.2  改变表空间和数据文件的

状态 150

8.5.3  设置默认的表空间 151

8.5.4  扩展表空间 152

8.5.5  删除表空间和数据文件 153

8.6  查看表空间和数据文件的信息 154

8.7  本章小结 156

8.8  习题与实践练习 156

第9章  Oracle模式对象 159

9.1  表 159

9.1.1  创建表 159

9.1.2  管理表 162

9.2  表的约束 166

9.2.1  非空约束 167

9.2.2  唯一性约束 168

9.2.3  主键约束 169

9.2.4  外键约束 171

9.2.5  检查约束 173

9.2.6  禁用和激活约束 174

9.2.7  约束的验证状态 175

9.3  视图 176

9.3.1  创建视图 176

9.3.2  视图的DML操作 178

9.3.3  修改和删除视图 180

9.4  索引 180

9.4.1  索引的分类 181

9.4.2  创建索引 182

9.4.3  管理索引 184

9.5  序列 187

9.5.1  创建序列 187

9.5.2  使用序列 188

9.5.3  管理序列 189

9.6  同义词 190

9.7  本章小结 191

9.8  习题与实践练习 191

第10章  SQL基础知识 196

10.1  SQL概述 196

10.1.1  SQL的特点 197

10.1.2  SQL的种类 197

10.1.3  SQL规范与操作 199

10.1.4  SQL操作界面 199

10.2  Oracle 18c常用数据类型与

操作符 199

10.2.1  Oracle 18c常用数据类型 200

10.2.2  Oracle 18c常用操作符 200

10.3  数据操纵语言 201

10.3.1  基本查询语句SELECT 201

10.3.2  添加数据语句INSERT 207

10.3.3  修改数据语句UPDATE 208

10.3.4  删除数据语句DELETE或

TRUNCATE 208

10.3.5  其他数据操纵语句 209

10.4  数据控制语言 210

10.4.1  GRANT语句 210

10.4.2  REVOKE语句 210

10.5  事务控制语言 210

10.5.1  COMMIT语句 210

10.5.2  ROLLBACK语句 211

10.6  使用函数 211

10.6.1  字符串函数 211

10.6.2  数值函数 212

10.6.3  日期时间函数 213

10.6.4  转换函数 214

10.6.5  聚合函数 215

10.7  高级查询 216

10.7.1  简单连接查询 216

10.7.2  使用JOIN关键字的

连接查询 217

10.7.3  集合查询 221

10.7.4  子查询 222

10.8  案例分析 226

10.9  本章小结 232

10.10  习题与实践练习 232

第11章  PL/SQL编程基础 234

11.1  PL/SQL简介 234

11.1.1  PL/SQL体系结构 234

11.1.2  PL/SQL的特点 235

11.1.3  PL/SQL代码编写规则 235

11.1.4  PL/SQL的开发和

运行环境 236

11.2  PL/SQL程序块结构 237

11.3  常量和变量 238

11.3.1  PL/SQL标识符 239

11.3.2  数据类型 239

11.3.3  声明常量与变量 241

11.3.4  使用%TYPE和%ROWTYPE

定义变量 242

11.4  PL/SQL控制结构 244

11.4.1  条件结构 244

11.4.2  循环结构 247

11.5  游标的创建与使用 249

11.5.1  声明游标 250

11.5.2  打开游标 250

11.5.3  检索游标 251

11.5.4  关闭游标 251

11.5.5  游标的常用属性 251

11.5.6  简单的游标循环 252

11.5.7  游标FOR循环 253

11.5.8  带参数的游标 253

11.5.9  使用游标更新数据 254

11.6  PL/SQL异常处理 254

11.6.1  异常处理简介 254

11.6.2  系统异常 255

11.6.3  自定义异常 256

11.7  PL/SQL应用程序性能调优 258

11.7.1  PL/SQL性能问题的由来 258

11.7.2  确定PL/SQL的性能问题 259

11.7.3  PL/SQL性能优化的特性 259

11.8  本章小结 263

11.9  习题与实践练习 263

第12章  存储过程、触发器、

函数和包 267

12.1  存储过程 267

12.1.1  无参数存储过程的创建与

调用 268

12.1.2  带参数存储过程的创建与

调用 269

12.1.3  管理存储过程 271

12.1.4  存储过程中的异常处理 271

12.2  触发器 272

12.2.1  触发器概述 272

12.2.2  创建触发器 272

12.2.3  管理触发器 276

12.2.4  触发器相关数据字典 277

12.3  函数 277

12.3.1  创建和调用函数 277

12.3.2  修改和删除函数 278

12.4  程序包 278

12.4.1  创建程序包 279

12.4.2  包的开发步骤 280

12.4.3  删除程序包 280

12.4.4  包的管理 280

12.5  本章小结 281

12.6  习题与实践练习 281

第13章  事务和锁 284

13.1  事务概述 284

13.1.1  事务的概念 284

13.1.2  事务的特性 284

13.2  事务处理 285

13.2.1  事务的开始与结束 285

13.2.2  使用COMMIT语句

提交事务 286

13.2.3  使用ROLLBACK语句回退

全部事务 286

13.2.4  设置保存点回退部分事务 287

13.3  并发事务和锁 288

13.3.1  并发事务 288

13.3.2  事务隔离级别 289

13.3.3  锁机制 289

13.3.4  锁的类型 290

13.3.5  死锁 290

13.4  本章小结 291

13.5  习题与实践练习 291

第14章  Oracle安全性管理 293

14.1  用户 293

14.1.1  创建用户 294

14.1.2  管理用户 296

14.2  权限管理 297

14.2.1  权限概述 297

14.2.2  系统权限管理 298

14.2.3  对象权限管理 300

14.3  角色管理 303

14.3.1  角色概述 303

14.3.2  用户自定义角色 304

14.3.3  管理用户角色 305

14.4  概要文件和数据字典视图 307

14.4.1  创建概要文件 308

14.4.2  管理概要文件 310

14.4.3  数据字典视图 311

14.5  审计 313

14.5.1  审计启用与关闭 313

14.5.2  登录审计 314

14.5.3  语句审计 314

14.5.4  对象审计 315

14.5.5  权限审计 315

14.6  本章小结 316

14.7  习题与实践练习 316

第15章  数据库备份和恢复 318

15.1  数据库备份和恢复概述 318

15.1.1  数据库备份概述 318

15.1.2  数据库备份的方法 319

15.1.3  数据库备份的保留策略 320

15.1.4  数据库恢复概述 321

15.1.5  备份与恢复的关系 322

15.2  物理备份与恢复 323

15.2.1  冷备份与恢复 323

15.2.2  热备份与恢复 324

15.2.3  几种非完全恢复方法 326

15.3  逻辑备份与恢复 329

15.3.1  逻辑备份与恢复概述 329

15.3.2  导出和导入 329

15.3.3  数据泵 330

15.3.4  恢复管理器 335

15.4  案例分析 341

15.5  本章小结 342

15.6  习题与实践练习 342

第16章  大数据和云计算 344

16.1  大数据 344

16.1.1  大数据的基本概念 344

16.1.2  大数据的特点 345

16.2  云计算 346

16.2.1  云计算的基本概念 346

16.2.2  大数据和云计算的关系 346

16.2.3  云计算的层次结构 346

16.2.4  云计算的特点 348

16.3  大数据的处理过程 348

16.4  推动大数据发展的因素 349

16.5  云数据库 350

16.6  NoSQL数据库 352

16.6.1  NoSQL数据库的基本

概念 352

16.6.2  NoSQL数据库的种类 353

16.6.3  常用的NoSQL数据库 354

16.7  本章小结 356

16.8  习题与实践练习 356

第17章  openGauss数据库 358

17.1  华为数据库概述 358

17.1.1  华为数据库的发展历程 358

17.1.2  openGauss数据库概述 360

17.2  openGauss SQL引擎 363

17.2.1  SQL引擎概述 363

17.2.2  SQL解析 364

17.2.3  查询优化 364

17.3  openGauss执行器技术 365

17.3.1  openGauss执行器概述 366

17.3.2  openGauss执行引擎 367

17.3.3  执行算子 367

17.3.4  openGauss执行器简介 369

17.4  openGauss存储技术 370

17.4.1  openGauss存储概览 371

17.4.2  openGauss行存储引擎 371

17.4.3  openGauss列存储引擎 372

17.5  openGauss事务机制 374

17.5.1  openGauss事务概览 374

17.5.2  openGauss事务ACID

特性 375

17.5.3  openGauss分布式事务 377

17.6  openGauss安全 379

17.7  本章小结 380

17.8  习题与实践练习 380

第18章  数据库应用综合项目案例 382

18.1  系统设计 382

18.1.1  系统功能概述 382

18.1.2  系统功能模块设计 383

18.2  数据库设计 383

18.2.1  数据库需求分析 383

18.2.2  数据库逻辑结构设计 384

18.3  数据库实现 386

18.3.1  创建mmu用户 386

18.3.2  创建表、序列和约束 387

18.4  系统功能设计 389

18.4.1  逻辑分层结构设计 389

18.4.2  系统文件组织结构 390

18.4.3  实体对象设计 390

18.4.4  定义ActionForm 390

18.4.5  持久层结构设计 391

18.4.6  业务层结构设计 392

18.4.7  页面结构设计 392

18.5  系统功能实现 393

18.5.1  创建Web项目——

Medicine Manager 393

18.5.2  配置文件 393

18.5.3  实体及映射 396

18.5.4  公共类设计 398

18.5.5  系统登录模块设计 400

18.5.6  药品类别信息管理 402

18.5.7  药品信息管理 406

18.5.8  系统管理 408

18.5.9  运行项目 409

18.6  本章小结 410

参考文献 411