本书介绍了资料库原理、方法及其套用开发技术。介绍了资料库系统基础,关係资料库理论,关係资料库标準语言SQL,SQL Server 2005套用基础,SQL语言高级套用,资料库设计,资料库保护技术,资料库访问技术,C语言资料库应用程式开发技术,C#资料库应用程式开发技术,Java资料库应用程式开发技术以及资料库新技术等内容。同时介绍了使用C、C#和Java三种语言开发资料库应用程式的基本方法和技术。附录提供实验指导、课程设计指导等实践环节。
基本介绍
- 书名:资料库原理与套用——基础。开发技术。实践
- 作者:刘玉宝
- ISBN:10位7121116588,13位9787121116582
- 类别:计算机与网际网路
- 页数:322页
- 定价:33元
- 出版社:电子工业出版社
- 出版时间:2010-09-01
- 装帧:平装
- 开本:16开
简介
读者对象
本书可作为普通高等学校计算机及信息专业的本专科生的教材,也适合从事资料库应用程式开发人员参考之用。
本书特色
本书以本书内容丰富、结构合理、实用性强。力求理论叙述严谨,套用能力培养目标明确,原理 + SQL Server 2005 + 目前流行的资料库访问技术 + 模拟软体企业实际开发流程的案例开发 + 实验指导 + 课程设计指导,构成完整的实际开发能力的培养体系。
本书内容丰富、结构合理、实用性强。力求理论叙述严谨,套用能力培养目标明确,主要培养学生资料库套用系统实际开发能力,介绍最新的资料库套用与开发技术,以便与实际工作岗位无缝接轨。
本书主要特点
(1) 以关係资料库系统为核心。在系统论述资料库基本知识的基础上,着重讨论了关係资料库的原理与实现,其中对关係数据模型、关係资料库体系结构、关係规範化理论等都有较详细、系统的说明。
(2) 教材对传统资料库的内容进行了精简,如对层次资料库、网状资料库仅对其模型做了简要介绍,删除了一些与作业系统联繫较密切的存储理论等。
(3) 为了反映当前资料库领域的新技术、新水平和新趋势。本教材介绍了分散式资料库系统、面向对象资料库、数据仓库和数据挖掘等内容,力求反映当前资料库技术的发展。
(4) 注重理论联繫实际,加强资料库套用开发技术的介绍。教材在资料库语言(SQL)等资料库套用技术方面进行了较为全面的论述,并结合一些实例较详细地讲解了资料库设计方法,为读者进行资料库应用程式的开发提供了较扎实的基础。结合SQL Server 2005的具体的资料库管理系统,讲解了资料库一些管理技术的套用,使读者在学习理论的同时有了具体的套用,也为读者维护管理大中型资料库系统打下基础。本教材还介绍了C、C#和Java语言开发资料库应用程式的基本技术,为读者在选择开发语言上提供了更广阔的空间。
(5) 在内容选取、章节安排、难易程度、例子选取等方面充分考虑到理论教学和实践教学的需要,力求使教材概念準确、清晰,重点明确,内容广泛,便于取捨,每章均配有习题便于教学。
全书内容丰富,结构合理,实用性强。其中第7、8、9章的内容可以根据实际情况进行取捨,针对读者现有的语言基础选择相应的章节学习。
本书配有电子课件、完整的开发案例原始码、习题参考答案等教学资源,需要者可从华信教育资源网免费注册下载。
……
前言
资料库技术产生于20世纪60年代末。经过40多年的迅猛发展,已经形成了完整的理论与技术体系,并已成为计算机科学与技术中的一个重要分支。随着信息技术的迅猛发展,资料库技术已经成为国家信息基础设施和信息化社会中的最重要的支撑技术之一。
伴随着资料库技术在国民经济、科技和文化等各个领域的广泛套用,资料库及其设计技术已经受到了各行各业人员的普遍关注。资料库课程已成为高等院校计算机科学与技术、信息工程、管理工程、信息管理与信息系统等专业的核心专业课程,并有越来越多的专业及相关技术人员提出了对资料库知识的需求。
……
目录
第1章 资料库系统概述······························ (1)
1.1 资料库系统的基本概念··························· (1)
1.1.1 数据管理与数据处理·························· (1)
1.1.2 资料库······························· (2)
1.1.3 资料库管理系统··························· (2)
1.1.4 资料库系统····························· (2)
1.2 数据描述与数据模型···························· (4)
1.2.1 数据的3种範畴··························· (4)
1.2.2 信息世界中所涉及的基本概念······················ (4)
1.2.3 机器世界中所涉及的基本概念······················ (5)
1.2.4 实体间的联繫···························· (5)
1.3 概念数据模型与E-R表示方法························ (6)
1.3.1 数据模型······························ (6)
1.3.2 概念数据模型···························· (7)
1.3.3 概念数据模型的E-R表示方法······················ (8)
1.3.4 概念数据模型实例·························· (8)
1.4 传统数据模型概述···························· (10)
1.4.1 层次模型······························ (10)
1.4.2 网状模型······························ (11)
1.4.3 关係模型······························ (13)
1.5 资料库系统结构····························· (13)
1.5.1 资料库系统模式的概念························ (13)
1.5.2 资料库系统的三级模式结构······················ (14)
1.5.3 数据独立性····························· (14)
1.6 资料库管理系统的组成·························· (15)
1.7 资料库系统的组成···························· (16)
1.8 小结·································· (16)
习题1···································· (17)
第2章 关係资料库理论····························· (21)
2.1 关係模型································ (21)
2.1.1 关係模型的基本概念························· (21)
2.1.2 关係模式······························ (23)
2.2 关係模型的完整性···························· (23)
2.3 关係代数································ (24)
2.3.1 关係代数概述···························· (24)
2.3.2 关係代数的基本操作························· (24)
2.3.3 关係代数的其他操作························· (27)
2.4 关係资料库规範化理论·························· (28)
2.4.1 关係规範化理论概述························· (28)
2.4.2 函式依赖······························ (30)
2.4.3 关係的规範化···························· (32)
2.4.4 多值依赖与第四範式························· (34)
2.4.5 各种範式之间的关係························· (35)
2.5 小结·································· (36)
习题2···································· (36)
第3章 关係资料库语言SQL··························· (41)
3.1 SQL语言的功能与特点·························· (41)
3.2 表的基本操作······························ (41)
3.2.1 定义表······························· (41)
3.2.2 修改表······························· (44)
3.2.3 删除基本表····························· (45)
3.3 SQL的数据查询····························· (45)
3.3.1 单表查询······························ (46)
3.3.2 多表查询······························ (52)
3.4 SQL的视图操作····························· (54)
3.4.1 定义视图······························ (54)
3.4.2 创建视图······························ (54)
3.4.3 使用视图······························ (55)
3.4.4 删除视图······························ (56)
3.5 子查询································· (56)
3.6 组合查询································ (58)
3.7 数据的插入、修改与删除························· (59)
3.7.1 插入数据······························ (59)
3.7.2 修改数据······························ (60)
3.7.3 删除数据······························ (60)
3.8 小结·································· (61)
习题3···································· (61)
第4章 SQL Server 2005套用基础························· (66)
4.1 SQL Server 2005系统概述························· (66)
4.2 SQL Server 2005版本说明························· (67)
4.3 SQL Server 2005 Express Edition简介····················· (68)
4.4 SQL Server 2005安装与配置························ (70)
4.4.1 安装时考虑的关键点························· (70)
4.4.2 SQL Server 2005 Express Edition安装··················· (71)
4.4.3 SQL Server 2005组件························· (77)
4.5 常见故障分析······························ (80)
4.6 资料库的创建······························ (80)
4.6.1 作业系统档案···························· (80)
4.6.2 资料库档案组···························· (81)
4.6.3 使用数据档案和档案组的建议····················· (81)
4.6.4 创建资料库····························· (81)
4.6.5 修改资料库····························· (84)
4.6.6 删除资料库····························· (85)
4.7 基本表的定义······························ (85)
4.7.1 创建基本表····························· (85)
4.7.2 修改基本表····························· (89)
4.7.3 删除基本表····························· (91)
4.8 索引的建立和删除···························· (91)
4.8.1 索引的概念····························· (91)
4.8.2 索引的类型····························· (91)
4.8.3 建立索引······························ (92)
4.8.4 删除索引······························ (92)
4.9 小结·································· (92)
习题4···································· (93)
第5章 SQL高级套用······························ (94)
5.1 Transact_SQL······························ (94)
5.1.1 Transact_SQL简介·························· (94)
5.1.2 Transact_SQL语法格式························ (94)
5.1.3 Transact_SQL 系统元素························ (96)
5.2 Transact_SQL程式流程控制························ (99)
5.2.1 IF...ELSE语句···························· (99)
5.2.2 BEGIN...END语句························· (100)
5.2.3 GOTO语句···························· (101)
5.2.4 WHILE、BREAK、CONTINUE语句·················· (101)
5.2.5 WAITFOR语句··························· (101)
5.2.6 RETURN语句··························· (102)
5.2.7 CASE表达式···························· (102)
5.3 存储过程································ (103)
5.3.1 存储过程的概念·························· (103)
5.3.2 存储过程的创建与执行························ (104)
5.3.3 存储过程与参数·························· (108)
5.4 触发器································· (110)
5.4.1 触发器的概念与工作原理······················· (110)
5.4.2 创建触发器···························· (111)
5.4.3 管理触发器···························· (114)
5.4.4 触发器的用途··························· (115)
5.5 小结·································· (115)
习题5··································· (115)
第6章 资料库设计······························· (116)
6.1 资料库设计的内容与特点························· (116)
6.2 资料库设计方法····························· (116)
6.3 资料库设计步骤····························· (117)
6.4 资料库规划······························· (118)
6.5 需求分析································ (118)
6.5.1 需求分析的任务·························· (118)
6.5.2 需求分析的方法·························· (119)
6.5.3 需求分析的步骤·························· (119)
6.6 概念结构设计······························ (122)
6.6.1 设计各局部套用的E-R模型······················ (122)
6.6.2 全局E-R模型的设计························· (122)
6.7 逻辑结构设计······························ (124)
6.7.1 逻辑结构设计的步骤························· (124)
6.7.2 E-R图向关係模型的转换······················· (124)
6.7.3 逻辑模式的最佳化·························· (125)
6.7.4 外模式的设计··························· (126)
6.8 物理结构设计······························ (127)
6.8.1 资料库物理结构设计的内容与方法··················· (127)
6.8.2 关係模式存取方法的选择······················· (127)
6.8.3 系统存储结构的确定························· (129)
6.9 资料库的实施······························ (130)
6.9.1 资料库试运行··························· (131)
6.9.2 资料库的运行与维护························· (131)
6.10 资料库套用的结构和开发环境······················ (132)
6.10.1 资料库套用模型·························· (132)
6.10.2 资料库套用开发环境ODBC····················· (134)
6.11 小结································· (137)
习题6··································· (137)
第7章 资料库保护技术····························· (140)
7.1 事务机制································ (140)
7.1.1 事务的概念与特性·························· (140)
7.1.2 事务的提交与回退·························· (141)
7.2 资料库安全性······························ (142)
7.2.1 对资料库安全的威胁························· (142)
7.2.2 资料库安全性控制·························· (143)
7.2.3 视图机制····························· (144)
7.2.4 数据加密····························· (144)
7.2.5 SQL Server 2005的安全性······················· (144)
7.3 资料库完整性······························ (147)
7.3.1 资料库完整性概述·························· (147)
7.3.2 完整性控制···························· (148)
7.3.3 数据完整性的实现·························· (150)
7.4 资料库恢复······························· (153)
7.4.1 资料库的故障分类·························· (153)
7.4.2 资料库故障的基本恢複方式······················ (154)
7.4.3 恢复策略····························· (156)
7.4.4 具有检查点的恢复技术························ (158)
7.4.5 SQL Server 2005备份与还原······················ (159)
7.5 并发控制································ (163)
7.5.1 资料库并发操作带来的数据不一致性问题················ (163)
7.5.2 封锁技术····························· (165)
7.5.3 锁协定······························ (165)
7.5.4 封锁带来的问题——活锁与死锁···················· (166)
7.5.5 并发调度的可串列性························· (168)
7.5.6 SQL Server的并发控制························ (170)
7.6 小结·································· (171)
习题7··································· (172)
第8章 资料库访问技术····························· (176)
8.1 ODBC的使用······························ (176)
8.1.1 ODBC概述···························· (176)
8.1.2 ODBC数据源的配置························· (177)
8.2 ADO的使用······························· (179)
8.2.1 ADO概述····························· (179)
8.2.2 使用ADO技术访问资料库举例···················· (181)
8.3 ADO简介····························· (184)
8.3.1 ADO技术的设计目标······················ (184)
8.3.2 ADO的体系结构························ (184)
8.3.3 ADO数据对象························· (190)
8.4 JDBC技术······························· (191)
8.4.1 JDBC概述····························· (191)
8.4.2 JDBC驱动程式··························· (192)
8.4.3 JDBC常用类···························· (193)
8.5 小结·································· (194)
习题8··································· (194)
第9章 C语言资料库应用程式开发························ (195)
9.1 嵌入式SQL语句····························· (195)
9.1.1 在C语言程式中嵌入SQL语句的程式开发环境的搭建··········· (196)
9.1.2 第一个在C语言程式中嵌入SQL语句的程式··············· (197)
9.2 静态SQL语句······························ (199)
9.2.1 声明嵌入式SQL语句中使用的C变数·················· (199)
9.2.2 连线资料库···························· (201)
9.2.3 数据的查询与更新·························· (202)
9.2.4 SQL通信区···························· (203)
9.3 动态SQL语句······························ (205)
9.3.1 动态修改····························· (205)
9.3.2 动态游标····························· (206)
9.3.3 SQLDA······························ (208)
9.4 C语言资料库应用程式开发实例······················ (209)
9.4.1 需求说明····························· (209)
9.4.2 资料库结构设计·························· (209)
9.4.3 资料库行为设计·························· (210)
9.4.4 系统实现····························· (210)
习题9··································· (215)
第10章 C#资料库应用程式开发··················· (216)
10.1 资料库的连线····························· (216)
10.1.1 SqlConnection的使用························ (217)
10.1.2 OleDbConnection的使用······················ (218)
10.1.3 OdbcConnection的使用······················· (219)
10.1.4 OracleConnection的使用······················ (220)
10.2 数据的获取······························ (223)
10.2.1 创建Command对象························ (223)
10.2.2 执行命令···························· (223)
10.2.3 参数化查询··························· (227)
10.2.4 执行存储过程·························· (229)
10.3 DataReader的使用··························· (231)
10.3.1 DataReader简介·························· (231)
10.3.2 使用DataReader读取数据······················ (232)
10.3.3 在DataReader中使用多个结果集··················· (234)
10.4 DataSet和DataAdapter的使用······················ (236)
10.4.1 DataSet简介··························· (236)
10.4.2 DataAdapter简介························· (236)
10.4.3 利用DataSet和DataAdapter访问数据················· (237)
10.4.4 类型和无类型DataSet······················· (239)
10.5 性能································· (240)
10.6 C#资料库应用程式开发实例······················· (240)
10.6.1 需求说明···························· (241)
10.6.2 资料库结构设计·························· (241)
10.6.3 资料库行为设计·························· (242)
10.6.4 系统实现···························· (242)
习题10··································· (244)
第11章 Java资料库应用程式开发························ (245)
11.1 JDBC API简介····························· (245)
11.2 SQL和Java之间的映射关係······················· (246)
11.3 JDBC编程······························· (247)
11.3.1 资料库操作基本步骤························ (248)
11.3.2 JDBC资料库操作实现······················· (249)
11.4 连线其他类型资料库·························· (267)
11.4.1 连线Oracle资料库························· (267)
11.4.2 连线MySQL资料库························ (268)
11.4.3 连线SQL Server资料库······················· (269)
11.4.4 JDBC:ODBC连线Access资料库··················· (271)
11.5 Java资料库应用程式开发实例······················ (272)
11.5.1 需求说明···························· (272)
11.5.2 资料库结构设计·························· (273)
11.5.3 资料库行为设计·························· (273)
11.5.4 系统实现···························· (274)
习题11··································· (279)
第12章 资料库新技术····························· (282)
12.1 面向对象资料库系统·························· (282)
12.1.1 对象-关係资料库························· (284)
12.1.2 面向对象资料库与传统资料库的比较················· (284)
12.2 分散式资料库系统··························· (286)
12.2.1 分散式资料库系统概述······················· (286)
12.2.2 分散式资料库系统的设计······················ (288)
12.2.3 分散式资料库系统的安全技术···················· (289)
12.2.4 分散式资料库系统的发展前景与套用趋势··············· (289)
12.3 数据仓库······························· (291)
12.3.1 数据仓库的定义与特点······················· (291)
12.3.2 数据仓库的种类·························· (292)
12.3.3 数据集市···························· (292)
12.3.4 数据仓库中的几个数据······················· (293)
12.3.5 数据仓库模型·························· (294)
12.4 数据挖掘······························· (295)
12.4.1 数据挖掘的定义·························· (295)
12.4.2 数据挖掘的分类·························· (295)
12.4.3 数据挖掘的数据来源························ (295)
12.4.4 数据挖掘的体系结构························ (296)
12.4.5 数据挖掘的步骤·························· (296)
12.4.6 数据挖掘的功能·························· (296)
12.4.7 数据挖掘的常用技术························ (296)
12.5 资料库技术的新套用·························· (297)
12.5.1 数据模型研究·························· (297)
12.5.2 与新技术结合的研究························ (297)
12.5.3 与套用领域结合的研究······················· (300)
12.6 小结································· (302)
习题12··································· (302)
附录A 实验部分································ (303)
附录B 课程设计指导书····························· (317)
参考文献···································· (323)
文摘
数据结构是刻画一个数据模型性质最重要的方面。因此,在资料库系统中,通常按照数据结构的类型来命名数据模型。例如,层次结构、网状结构、关係结构的数据模型分别命名为层次模型、网状模型和关係模型。(2)数据操作。数据操作用于描述系统的动态特徵。数据操作是指允许对资料库中各种对象(型)的实例(值)执行的操作的集合,包括操作及有关的操作规则。资料库主要有检:索和修改(包括插入、删除、更新)两大类操作。数据模型必须定义这些操作的确切含义、操作符号、操作规则(如优先权)及实现操作的语言。
文摘

(3)数据完整性约束。数据完整性约束是一组完整性规则的集合。完整性规则是给定的数据模型中数据及其联繫所具有的制约和存储规则,用以限制符合数据模型的资料库状态及状态的变化,用以确保数据的正确、有效和相容。
数据模型应该反映和规定本数据模型必须遵守的、基本的、通用的完整性约束。例如,在关係模型中,任何关係必须满足实体完整性和参照完整性这两类约束。
此外,数据模型还应该提供定义完整性约束的机制,以反映具有套用所涉及的数据必须遵守的特定的语义约束。例如,在教师信息中的“性别”属性只能取值为男或女,教师任课信息中的“课程号”属性的值必须取自学校已经开设的课程等。
1.3.2 概念数据模型
概念数据模型,有时也简称概念模型。概念数据模型是按用户的观点对现实世界中的数据建模的,是一种独立于任何计算机系统的模型,完全不涉及信息在计算机系统中的表示,也不依赖于具体的资料库管理系统。只是用来描述某个特定组织所关心的信息结构。它是对现实世界的第一层抽象,是用户和资料库设计人员之间交流的工具。
概念数据模型是理解资料库的基础,也是设计资料库的基础。