《数据库原理及设计》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:陶宏才主编
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2004
  • ISBN:7302079331
  • 页数:386 页
图书介绍:本书是在长期数据教学和项目开发基础上,为高等学校计算机及相关专业编写的数据库教材。

目 录 1

第1章 数据库系统概述 1

1.1 数据库系统及其总体结构 2

1.1.1 数据库管理系统出现的背景 2

1.1.2 数据库系统的抽象层次 9

1.1.3 数据库语言与SQL/ODBC/JDBC 11

1.1.4 数据库系统总体结构 14

1.2 数据库系统中的关键术语与概念 15

1.2.1 数据库及其相关概念 15

1.2.2 视图及其相关概念 17

1.2.3 数据抽象、数据模型、数据模式及其相互关系 20

1.2.4 传统数据模型回顾 22

1.3 数据库系统的用户 24

1.4 数据库应用系统开发概述 25

1.4.1 C/S模式 25

1.4.2 B/S模式 26

1.4.3 组件与分布式对象开发技术 27

1.4.4 CGI/ISAPI/NSAPI 31

1.4.5 ASP/JSP/PHP 32

1.5 由应用需求看数据库技术的发展 34

1.5.1 基于文件系统的数据管理 34

1.5.2 第一代数据库系统 35

1.5.3 第二代数据库系统 35

1.5.4 OLTP及OLAP 36

1.5.5 数据仓库与数据挖掘 37

1.5.6 并行与分布式数据库系统 38

1.5.7 Internet/Web数据库 39

1.5.8 面向对象的数据库系统 40

本章小结 41

习题 42

第2章 实体联系数据模型 43

2.1 关于数据模型的几个重要问题 43

2.2 数据库设计概述 45

2.3.1 实体、实体型及属性 47

2.3 实体联系模型 47

2.3.2 联系及联系型 49

2.3.3 ERM中的完整性约束 50

2.3.4 联系型属性的移动处理 56

2.3.5 弱实体 56

2.3.6 ERM各元素图示 57

2.4 扩展实体联系模型 58

2.4.1 类层次 58

2.4.2 演绎与归纳 59

2.4.3 演绎的原则 59

2.4.4 聚集 60

2.5 利用ER模型的概念数据库设计 61

2.5.1 实体与属性的取舍 61

2.5.2 属性在实体与联系间的取舍 61

2.5.3 二元联系与三元联系的取舍 62

2.5.5 大型系统的概念数据库设计方法 63

2.5.4 三元联系与聚集的取舍 63

2.5.6 应用实例 64

本章小结 65

习题 66

第3章 关系数据模型 67

3.1 关系数据模型的基本概念 67

3.1.1 SQL语言简介 68

3.1.2 关系模型 68

3.1.3 SQL Server和Sybase支持的完整性约束及其设定 75

3.1.4 视图及其操作 86

3.1.5 实体联系模型向关系模型的转换 89

3.2 关系代数及关系运算 91

3.2.1 关系代数 91

3.2.2 关系运算 108

本章小结 112

习题 113

4.1.1 SQL语言及其标准 115

第4章 SQL语言及其操作 115

4.1 SQL语言概述 115

4.1.2 SQL语言的特点 116

4.1.3 SQL-92标准的分级 117

4.1.4 标准SQL语言与实际数据库产品中的SQL语言 117

4.2 数据定义子语言及其操作 118

4.2.1 定义子语言的3个命令关键字 118

4.2.2 定义数据库 119

4.2.3 定义表 122

4.2.4 定义视图 125

4.2.5 定义索引 127

4.3 数据操纵子语言及其操作 129

4.3.1 数据操纵子语言的4个命令关键字 129

4.3.2 数据插入 129

4.3.3 数据修改 130

4.3.4 数据删除 132

4.3.5 数据查询 133

4.4 Sybase和MS SQL Server中的T-SQL语言 138

4.4.1 T-SQL语言简介 138

4.4.2 T-SQL的数据类型 139

4.4.3 T-SQL编程 141

4.4.4 T-SQL提供的函数 145

4.4.5 T-SQL游标 149

4.4.6 T-SQL存储过程 152

4.5 嵌入式SQL 156

4.5.1 嵌入式SQL语句的基本形式 156

4.5.2 嵌入式SQL与宿主语言的通信 159

4.5.3 SQL通信区 159

4.5.4 主变量的定义与使用 160

4.5.5 嵌入SQL中的游标定义与使用 164

4.5.6 C语言中的嵌入式SQL实例 165

本章小结 170

习题 171

第5章 数据库的保护 173

5.1 数据库的保护概述 174

5.1.1 破坏数据库的类型 174

5.1.2 DBMS对数据库的保护措施 174

5.2 数据库安全性 175

5.2.1 数据库安全性的概念 175

5.2.2 自主式访问控制的授权与撤权 178

5.2.3 Sybase及MS SQL Server的安全体系及其设置 179

5.2.4 数据库安全性的其他相关内容 182

5.3 数据库完整性 183

5.3.1 数据库完整性的概念 184

5.3.2 完整性约束的类型 184

5.3.3 完整性约束的定义 185

5.3.4 完整性约束的验证 188

5.3.5 SQL-92和数据库产品对完整性的支持 189

5.4 故障恢复技术 189

5.4.1 事务管理概述 189

5.4.2 故障恢复导论 193

5.4.3 日志结构 198

5.4.4 DBMS围绕更新事务的工作 198

5.4.5 事务内消息的处理 202

5.4.6 故障类型及恢复对策 203

5.4.7 MS SQL Server中的事务及故障恢复 205

5.5 并发控制 208

5.5.1 并发控制导论 208

5.5.2 并发执行可能引起的问题 210

5.5.3 并发控制的正确性准则 212

5.5.4 基于锁的并发控制协议 215

5.5.5 多粒度加锁协议 220

5.5.6 死锁及其预防、检测与处理 224

5.5.7 MS SQL Server中的并发控制技术 227

本章小结 230

习题 230

6.1.1 存在异常的关系模式示例 233

第6章 关系数据库设计理论 233

6.1 关系模式中可能存在的异常 233

6.1.2 可能存在的异常 235

6.2 关系模式中存在异常的原因 235

6.3 函数依赖 236

6.3.1 函数依赖定义 236

6.3.2 函数依赖分类及其定义 237

6.3.3 其他相关定义 238

6.3.4 函数依赖示例 238

6.3.5 Armstrong公理系统 239

6.4 关系模式的规范形式 240

6.4.1 范式 240

6.4.2 规范化 240

6.4.3 以函数依赖为基础的范式 241

6.4.4 多值依赖与第四范式 245

6.4.5 连接依赖与第五范式 247

6.5.1 规范化步骤 249

6.5 关系模式的规范化 249

6.5.2 关系模式的分解及其指标 250

本章小结 251

习题 252

第7章 数据库应用设计 253

7.1 数据库应用设计的步骤 254

7.2 数据库设计工具简介 255

7.2.2 ERwin 256

7.2.1 Oracle Case 256

7.2.3 SmartER 257

7.2.4 InfoModeler 257

7.3 用户需求描述与分析 257

7.3.1 需求分析的内容 257

7.3.2 用户需求调研的方法 258

7.3.3 用户需求描述与分析 259

7.3.4 用户需求描述与分析实例 259

7.4.1 概念设计的方法 263

7.4 概念设计 263

7.4.3 视图集成 264

7.4.2 视图设计 264

7.5 逻辑设计 265

7.5.1 ER图向关系模型的转换 265

7.5.2 数据模式的优化 268

7.5.3 设计用户外模式 270

7.6 物理设计 270

7.6.1 索引的有关概念 270

7.6.2 聚簇索引与非聚簇索引 271

7.6.3 建立索引 272

7.7 数据库实施 273

7. 7.1 数据载入 273

7.7.2 编写、调试应用程序 273

7.7.3 数据库试运行 274

7.8 数据库使用与维护 275

习题 276

本章小结 276

第8章 数据库应用系统设计实例 279

8.1 系统总体需求简介 279

8.1.1 用户总体业务结构 279

8.1.2 总体安全要求 280

8.2 系统总体设计 280

8.2.1 系统设计考虑的主要内容 280

8.2.2 系统的体系结构 280

8.2.3 系统软件开发平台 282

8.2.4 系统的总体功能模块 285

8.3 系统需求描述 285

8.3.1 系统全局数据流图 285

8.3.2 系统局部数据流图 286

8.3.3 系统数据字典 287

8.4 系统概念模型描述 289

8.4.3 合成全局ER图 290

8.4.2 系统局部ER图 290

8.4.1 构成系统的实体型 290

8.4.4 优化全局ER图 292

8.5 系统的逻辑设计 293

8.5.1 转化为关系数据模型 294

8.5.2 关系数据模型的优化与调整 294

8.5.3 数据库表的结构 295

8.6 数据库的物理设计 299

8.6.1 存储介质类型的选择 299

8.6.2 定义数据库 300

8.6.3 创建表及视图 301

8.6.4 创建索引 304

8.6.5 数据库服务器性能优化 304

本章小结 305

习题 306

9.1.1 Oracle公司的Oracle 307

9.1 主流数据库厂商、产品及工具 307

第9章 主流数据库产品、工具及比较 307

9.1.2 IBM公司的DB2及Informix 309

9.1.3 Sybase公司的ASE 311

9.1.4 CA公司及Ingres 314

9.2 信息系统对数据库产品的需求 316

9.3 主流数据库产品功能的粗略比较 317

本章小结 319

习题 319

第10章 数据仓库与数据挖掘及数据库新进展 321

10.1 数据仓库技术 321

10.1.1 数据仓库概述 321

10.1.2 数据仓库的多维数据模型 323

10.1.3 数据仓库的相关概念 325

10.1.4 数据仓库的系统结构 327

10.1.5 数据仓库系统开发与工作过程 328

10.2.1 数据挖掘概述 330

10.2 数据挖掘技术 330

10.2.2 数据挖掘的主要技术 332

10.2.3 数据挖掘与数据仓库 333

10.2.4 数据挖掘在各行业的应用 335

10.3 数据库技术的研究与发展 336

10.3.1 数据库技术研究的新特点 336

10.3.2 数据库技术的研究热点 338

10.3.3 国内数据库技术的发展状况 342

10.3.4 数据库技术的发展方向 343

本章小结 344

习题 344

第11章 数据库上机实验及指导 345

11.1 SQL数据库语言操作实验 345

11.1.1 SQL定义子语言实验 345

11.1.2 SQL操纵子语言实验 347

11.1.3 T-SQL编程实验 352

11.2.1 表本身的完整性 353

11.2 数据库完整性实验 353

11.2.2 表间参照完整性 355

11.3 SQL Server安全设置实验 356

11.3.1 创建登录账号 356

11.3.2 数据库用户设置 357

11.3.3 SQL Server角色管理 358

11.3.4 SQL Server语句及对象授权实验 359

11.4 数据库系统管理实验 359

11.4.1 故障恢复实验 359

11.4.2 数据库服务器及性能设置实验 362

本章小结 363

习题 364

附录 365

附录A 英汉术语对照表 365

附录B MS SQL Server2000安装 374

附录C SQL Server样例库表结构 380

参考文献 385