随着信息技术的发展,人们的日常工作、生活越来越离不开计算机。而其中核心之一就是数据库,其技术经过几十年的发展已经十分成熟。数据库已成为现代信息系统的核心组成部分,在很多领域,特别是金融等行业,表现得更为突出。于是,数据库技术及其之上的软件系统的开发技术,也成为计算机技术的重要组成部分。 本书就是针对数据库技术及其上的软件开发技术而设计的,目的是简要介绍数据库技术,着重介绍数据库之上的软件系统开发,并配有相应的案例。前者主要包括数据库基础知识和Oracle数据库;后者则包括ODBC和JDBC介绍、数据库的搜索问题、数据库与XML的交互以及hibernate。 本书适合高等院校学生数据库课程设计指导,也可以作为其他IT从业人员的参考用书。
目 录
第1章 数据库基础知识 1
1.1 数据库技术的发展 1
1.2 关系数据库的几个概念 2
1.2.1 基本概念 2
1.2.2 关系模型 3
1.2.3 关系模式 4
1.2.4 关系操作 4
1.3 关系范式 4
1.3.1 函数依赖 4
1.3.2 第一范式 5
1.3.3 第二范式 5
1.3.4 第三范式 6
1.3.5 BC范式 7
1.4 结构化查询语言SQL 7
1.4.1 基本数据类型 8
1.4.2 SQL中的运算符与函数 8
1.4.3 数据查询语言DQL 10
1.4.4 数据操纵语言DML 11
1.4.5 数据定义语言DDL 13
1.4.6 数据控制语言DCL 14
1.5 数据模型 17
1.5.1 概念模型 17
1.5.2 数据模型 17
1.5.3 实体-关系模型 18
1.5.4 ERwin简介 21
1.6 事务和锁 25
1.6.1 事务 25
1.6.2 事务的类型 26
1.6.3 锁 27
1.6.4 Oracle中的锁机制 28
第2章 Oracle数据库 30
2.1 Oracle数据库的物理存储结构 30
2.1.1 数据文件 30
2.1.2 日志文件 30
2.1.3 控制文件 31
2.1.4 跟踪文件与警告日志 31
2.2 Oracle的逻辑结构 31
2.2.1 表空间 31
2.2.2 段、范围、数据块 32
2.3 Oracle内存结构 32
2.3.1 系统全局区SGA 33
2.3.2 程序全局区PGA 33
2.3.3 排序区、大池及Java池 34
2.4 自动共享内存管理 34
2.4.1 系统全局区域 34
2.4.2 程序全局区域 37
2.5 数据库和例程的启动和关闭 37
2.6 Oracle的后台进程 38
2.7 PLSQL语言 39
2.7.1 背景介绍 39
2.7.2 PLSQL的优点 40
2.7.3 PLSQL块结构 40
2.8 Oracle安装 49
第3章 JDBC基础——新闻发布 系统 56
3.1 理论基础 56
3.1.1 Java连接数据库 56
3.1.2 使用ODBC连接数据库 56
3.1.3 使用JDBC连接数据库 60
3.1.4 JDBC与ODBC的比较 63
3.1.5 Tomcat上配置JSP环境 63
3.2 JBuilder介绍 65
3.3 需求分析及设计 69
3.4 数据库设计 72
3.4.1 数据字典 72
3.4.2 数据库表及其介绍 73
3.5 程序实现及运行结果 74
3.5.1 对JDBC的第一层封装 74
3.5.2 与用户信息相关业务 逻辑封装 77
3.5.3 与新闻信息相关业务 逻辑封装 80
3.5.4 用户注册 86
3.5.5 用户登录 91
3.5.6 新闻及图片信息提交 94
3.5.7 新闻管理 101
3.5.8 图片管理 103
3.5.9 新闻主页显示 104
第4章 JDBC基础——缴费系统 109
4.1 JDBC-ODBC桥接 109
4.2 系统介绍 109
4.2.1 系统需求 110
4.2.2 环境配置 110
4.3 管理员模块程序的实现及 运行结果 111
4.3.1 登录管理 112
4.3.2 管理员窗口 119
4.3.3 管理员信息维护 122
4.3.4 表单初始化 126
4.3.5 单据作废 134
4.4 操作员模块的实现及运行结果 136
4.4.1 票据输入 136
4.4.2 查询与统计 157
第5章 JDBC拓展——学员管理 系统 171
5.1 理论基础 171
5.1.1 JDBC连接基本知识回顾 171
5.1.2 PreparedStatement与 CallableStatement 172
5.1.3 ResultSetMetaData 174
5.1.4 大对象CLOB和BLOB 174
5.1.5 DataSource 176
5.2 需求及设计 177
5.2.1 系统分析 177
5.2.2 数据库设计 180
5.3 系统实现、分析及运行结果 181
5.3.1 JDBC的第一层封装 181
5.3.2 基本数据操作逻辑封装 184
5.3.3 与统计相关操作的封装 191
5.3.4 注册信息 195
5.3.5 预览信息 201
5.3.6 查询 202
5.3.7 统计 205
第6章 JDBC拓展与搜索引擎—— 文档管理系统 210
6.1 理论基础 210
6.1.1 JDBC记录集新特性 210
6.1.2 Rowset 213
6.1.3 数据库中的模糊查询 215
6.1.4 借助于搜索引擎 216
6.1.5 lucene 217
6.2 需求分析及设计 221
6.2.1 系统分析与设计 221
6.2.2 数据库设计 223
6.3 程序实现、分析及运行结果 224
6.3.1 JDBC封装 224
6.3.2 数据库到对象的封装 227
6.3.3 多数据源生成Document 对象 234
6.3.4 建立索引 239
6.3.5 删除索引中某个文档 242
6.3.6 索引重置 244
6.3.7 搜索已有的索引 245
6.3.8 添加数据 247
6.3.9 索引初始化 249
6.3.10 删除文档 250
6.3.11 检索主页面 252
第7章 JDBC拓展与XML-dbToXml 数据转换器 257
7.1 知识准备 257
7.1.1 XML简介 257
7.1.2 XML规则基础 258
7.1.3 DTD 260
7.1.4 XML文档分析器 264
7.1.5 ResultSetMetaData与 DataBaseMetaData 272
7.2 需求与设计 274
7.3 实现、解析及运行结果 275
7.3.1 对dom4j的封装 275
7.3.2 对JDBC的封装 279
7.3.3 数据转换 282
7.3.4 转换与显示 284
第8章 hibernate——社团活动管理 289
8.1 知识准备 289
8.1.1 中间件——hibernate 289
8.1.2 hibernate环境配置 289
8.1.3 hibernate.Properties 配置文件 291
8.1.4 XML配置文件 292
8.1.5 对象关系映射 293
8.2 需求分析及设计 296
8.3 数据库设计 297
8.4 配置文件、程序实现及运行结果 298
8.4.1 配置文件 298
8.4.2 映射文件 299
8.4.3 持久化类 299
8.4.4 对hibernate的封装 302
8.4.5 数据的录入 305
8.4.6 预览 308
8.4.7 信息删除 310
第9章 C++连接Oracle—— 学生商店信息管理系统 313
9.1 MFC ODBC 313
9.1.1 MFC ODBC简介 313
9.1.2 MFC连接ODBC示例 314
9.1.3 RFX机制 321
9.1.4 分析Wizard产生的代码 322
9.1.5 RFX的数据多行存取 324
9.2 MFC通过OCCI连接Oracle 324
9.2.1 OCCI简介 324
9.2.2 VC 6.0中环境的设置 325
9.3 实现及运行结果 329
9.3.1 对OCCI的简单封装 329
9.3.2 建立工程 333
9.3.3 添加控件并设置变量 334
9.3.4 变量初始化 337
9.3.5 对话框的数据交换机制 337
9.3.6 查看数据实现及其 运行结果 338
9.3.7 删除数据实现及其 运行结果 340
9.3.8 添加数据实现及其 运行结果 342