本书介绍了数据库原理、方法及其应用开发技术。介绍了数据库系统基础,关系数据库理论,关系数据库标准语言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 概念数据模型
概念数据模型,有时也简称概念模型。概念数据模型是按用户的观点对现实世界中的数据建模的,是一种独立于任何计算机系统的模型,完全不涉及信息在计算机系统中的表示,也不依赖于具体的数据库管理系统。只是用来描述某个特定组织所关心的信息结构。它是对现实世界的第一层抽象,是用户和数据库设计人员之间交流的工具。
概念数据模型是理解数据库的基础,也是设计数据库的基础。