《数据库设计与开发 基于Oracle数据库》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:孔蕾蕾,刘楠,顾伟宏著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2013
  • ISBN:9787302320265
  • 页数:320 页
图书介绍:本书是适合应用型本科教学及“卓越工程师教育培养计划”数据库类人才的教材,内容包括:关系数据库设计、SQL:数据操作与定义及数据库应用程序开发三部分。本书将主要作为应用型本科计算机及相关专业学生数据库数据库设计与开发的教材,也可作为IT专业人士,如系统分析和设计人员、应用程序开发人员、系统程序员、数据库从业人员及自学者的参考书。

第1章 数据库的设计与开发概述 1

1.1数据库概述 1

1.1.1数据库与数据库系统的发展 1

1.1.2数据与信息 3

1.2数据库系统架构 4

1.2.1数据库的三级模式架构 4

1.2.2数据独立性 9

1.2.3映射 9

1.3关系数据库与关系模型 10

1.3.1关系数据库管理系统 10

1.3.2关系模型 11

1.4数据库设计 14

1.4.1数据库设计的步骤 14

1.4.2规划 15

1.4.3需求分析 16

1.4.4概念设计 16

1.4.5逻辑设计 17

1.4.6物理设计 17

1.4.7实现和部署 17

1.4.8运行和维护 18

1.5数据库应用程序开发 18

1.5.1事务设计 18

1.5.2用户界面设计 19

1.5.3构建原型 19

1.5.4实现数据的转换与加载 20

1.5.5测试与维护 21

1.6小结 21

术语 22

练习 23

第2章 概念结构设计:实体关系建模 24

2.1实体关系建模与实体关系图 24

2.1.1为什么需要模型 24

2.1.2模型的作用 24

2.1.3建模语法 25

2.2实体、实例、属性和唯一标识符 26

2.2.1实体 26

2.2.2实例 27

2.2.3属性 27

2.2.4唯一标识符 30

2.2.5用仿实体关系图表示实体及其属性 30

2.3标识关系 30

2.3.1关系的度 31

2.3.2关系的可选性 31

2.3.3关系的基数 31

2.3.4关系的可转移性 38

2.3.5用仿实体关系图表示关系 39

2.4矩阵图 41

2.5小结 42

术语 42

练习 43

第3章 高级建模技术 46

3.1解决多对多关系 46

3.1.1隐藏属性的关系 46

3.1.2多对多关系的解决方案 47

3.1.3限定关系 49

3.2父类型与子类型 49

3.3层次结构和递归关系 53

3.3.1分层数据 53

3.3.2绘制层次结构 53

3.3.3层次关系与递归关系 54

3.4排他OR约束条件 55

3.4.1什么是约束条件 55

3.4.2相互排斥的关系 55

3.4.3弧 55

3.5利用历史数据建模 56

3.5.1保持时间特性 56

3.5.2与时间相关的历史信息和约束条件 57

3.5.3与价格相关的历史信息 58

3.5.4与日志相关的历史信息 58

3.6小结 59

术语 60

练习 60

第4章 逻辑数据库设计 62

4.1 ER图向关系模型的转换 62

4.1.1标识实体和属性 62

4.1.2确定属性域 64

4.1.3确定候选键和主键 65

4.2标识关系 66

4.2.1外键的命名 67

4.2.2一对一关系的映射 67

4.2.3一对多关系的映射 70

4.2.4多对多关系的映射 72

4.2.5关系的可选性的映射 75

4.2.6关系的可转移性的映射 75

4.2.7级联限定关系 76

4.2.8父类型和子类型的映射 78

4.2.9相互排斥关系的弧的映射 82

4.3定义完整性约束 83

4.4构建全局逻辑数据模型 84

4.5设计用户子模式 85

4.6小结 86

术语 87

练习 87

第5章 规范化 90

5.1规范化简介 90

5.2数据冗余和更新异常 92

5.3第一范式 94

5.4第二范式 95

5.5第三范式 98

5.6更高级的范式 101

5.6.1 BCNF 101

5.6.2 4NF 102

5.6.3 5NF 102

5.6.4 DKNF 104

5.7反规范化 104

5.7.1反规范化的目标 104

5.7.2反规范化技术 105

5.8小结 111

术语 112

练习 113

第6章 物理数据库设计 115

6.1物理设计简述 115

6.2将全局逻辑数据模型转换为目标DBMS支持的模型 116

6.2.1设计基本表 117

6.2.2设计派生数据的表示 117

6.2.3设计其他业务规则 118

6.3分析事务 118

6.3.1列出事务路径 118

6.3.2确定信息 119

6.3.3数据应用分析 120

6.4选择文件组织方式 120

6.4.1文件、块和记录 121

6.4.2文件组织 121

6.5选择索引 124

6.5.1索引简介 124

6.5.2创建与管理索引 125

6.5.3主索引与二级索引 128

6.5.4基于树的索引 130

6.6设计用户视图 132

6.6.1视图的定义与查询 132

6.6.2修改视图 136

6.6.3 DML语句和视图 136

6.6.4管理视图 137

6.7设计安全性机制 137

6.7.1设计系统安全性 138

6.7.2设计数据安全性 144

6.8了解系统资源 145

6.8.1主存 145

6.8.2 CPU 145

6.8.3磁盘I/O 146

6.8.4 RAID 146

6.8.5网络 147

6.9小结 147

术语 148

练习 148

第7章 函数与表达式 149

7.1大小写处理和字符处理 150

7.1.1 DUAL表 150

7.1.2字符函数 151

7.2数字函数 153

7.3日期函数 154

7.4转换函数 158

7.4.1 TO_ CHAR函数 159

7.4.2 TO_ NUMBER函数 163

7.4.3 TO_ DATE函数 163

7.5 NULL函数 165

7.5.1 NVL函数 165

7.5.2 NVL2函数 166

7.5.3 NULLIF函数 167

7.5.4 COALESCE函数 167

7.6条件表达式 168

7.6.1 CASE表达式 168

7.6.2 DECODE函数 169

7.7小结 170

术语 170

练习 171

第8章 连接操作 173

8.1笛卡儿积连接、等值连接和非等值连接 173

8.1.1笛卡儿积连接 174

8.1.2等值连接 174

8.1.3非等值连接 177

8.2内部连接和外部连接 178

8.2.1内部连接和外部连接概述 178

8.2.2左外连接、右外连接和完全外连接 178

8.3自连接 180

8.4自然连接和交叉连接 181

8.4.1 ANSI/ISO SQL 181

8.4.2自然连接 182

8.4.3交叉连接 183

8.5连接子句 183

8.5.1 USING子句 184

8.5.2 ON子句 185

8.5.3连接3个表 185

8.6小结 186

术语 187

练习 187

第9章 查询与更新操作 189

9.1组函数 189

9.1.1 MIN和MAX 190

9.1.2 SUM和AVG 191

9.1.3 VARIANCE和STDDEV 192

9.1.4 COUNT 192

9.2 GROUP BY和HAVING子句 194

9.2.1 GROUP BY子句 194

9.2.2组内组 196

9.2.3嵌套组函数 197

9.2.4 HAVING子句 197

9.3子查询 198

9.3.1单行子查询 198

9.3.2多行子查询 202

9.4 INSERT语句 205

9.4.1显式地向表中添加数据 205

9.4.2隐式地向表中添加数据 207

9.4.3插入特殊值 207

9.4.4使用子查询复制行 208

9.4.5通过用户交互操作插入记录 209

9.5更新列值和删除行 209

9.5.1 UPDATE 210

9.5.2 DELETE 212

9.6 DEFAULT值 213

9.7创建与修改表 214

9.7.1创建表 214

9.7.2修改表 217

9.8定义和管理约束条件 222

9.8.1完整性约束条件 222

9.8.2 NOT NULL和UNIQUE约束条件 224

9.8.3 PRIMARY KEY、 FOREIGN KEY和CHECK约束条件 226

9.8.4管理约束条件 229

9.9小结 232

术语 233

练习 234

第10章 高级SQL—— Oracle PL/SQL 237

10.1 PL/SQL体系结构和运行PL/SQL程序的方法 237

10.1.1 PL/SQL体系结构 237

10.1.2运行PL/SQL程序 237

10.2 PL/SQL块结构和组成元素 239

10.2.1 PL/SQL块结构 239

10.2.2 PL/SQL的组成元素 239

10.3 PL/SQL处理流程 244

10.3.1逻辑结构 244

10.3.2循环结构 250

10.3.3顺序结构 251

10.3.4异常处理 253

10.4游标 256

10.4.1显式游标 256

10.4.2游标的FOR循环 258

10.4.3隐式游标 258

10.5在PL/SQL中动态执行SQL语句 259

10.6小结 261

术语 261

练习 261

第11章 存储过程、函数及触发器 263

11.1存储过程 263

11.1.1什么是存储过程 263

11.1.2存储过程的语法 264

11.1.3存储过程的执行 268

11.1.4存储过程的维护 269

11.2函数 270

11.2.1什么是函数 270

11.2.2函数的语法 270

11.2.3函数的执行 271

11.2.4函数的维护 271

11.3触发器 272

11.3.1触发器的类型 272

11.3.2触发器的组成 272

11.3.3创建触发器 273

11.3.4创建系统事件触发器 278

11.4小结 279

术语 280

练习 280

第12章 创建数据库连接与执行SQL语句 281

12.1创建数据库连接 281

12.1.1异构环境下数据库互连的解决方法 281

12.1.2使用JDBC创建数据库连接 285

12.2执行SQL语句 288

12.2.1处理查询 288

12.2.2执行一般查询 288

12.2.3执行参数查询 290

12.2.4执行存储过程 291

12.3更新数据库 292

12.3.1创建表 292

12.3.2删除表 293

12.3.3修改表 293

12.3.4更新表中数据 293

12.4处理结果集 294

12.4.1以列名为参数 295

12.4.2以结果集中列的序号为参数 295

12.5小结 296

术语 296

练习 296

第13章 项目实例 299

13.1项目实例一:课程考试/练习系统(TES) 299

13.1.1 TES项目简介 299

13.1.2 TES的ERD设计 300

13.1.3 TES系统的逻辑模型 305

13.1.4 TES概念模型向逻辑模型的转换 305

13.2项目实例二:计算机销售电子商务平台项目(DPEBP) 309

13.3项目实例三:国际家居建材城商场管理系统(IFMS) 312

13.3.1 IFMS项目简介 312

13.3.2 IFMS系统的主要用例 312

13.3.3 IMFS的逻辑模型 316

13.3.4得到IMFS的关系表 318

13.4小结 319

术语 319

参考文献 320