编辑推荐
暂无
内容简介
本书是数据库初学者和初级开发人员不可多得的数据库宝典,其中融入了作者对数据库深入透彻的理解和丰富的实际操作经验。和系列版本一样,本版也深入浅出地描绘了数据库原理及其应用。但本版技术更新、实用性更强。本书介绍的重要数据库概念有:关系模型的基本概念、结构化查询语言、数据建模、数据库设计、数据库管理、大数据和NoSQL等。
◆ 使用Microsoft Access 2013演示和强调数据库的创建和使用原则
◆ 讨论了数据库管理,以及数据库在应用程序中的使用
◆ 介绍了SQL连接概念的内容以及通过SQL/PSM进行SQL编程的内容
◆ 配书光盘中包含11个附录
◆ 附录I介绍了启动和运转IIS Web服务器、PHP和NetBeans PHP开发工具的详细指导
◆ 附录K介绍了大数据和NoSQL运动的演变历史
作者简介
David M. Kroenke在教育、工业、顾问和出版等领域拥有30多年的从业经验。1991年,International Association of Information System授予他“年度计算机教育家”的荣誉称号。Kroenke是语义对象数据模型的创始者,他的咨询客户包括IBM、Microsoft、Computer Sciences公司,以及许多其他的公司和组织。
David J. Auer目前是西华盛顿大学的College of Business and Economics(CBE)信息系统和技术服务的主管,也是CBE的决策科学系的讲师。他从1981年开始在CBE中任教,教授的课程包括数值方法、生产和操作管理、统计、财务、管理信息系统。Auer和他人合编过几本与MIS相关的教材。
目录
第Ⅰ部分 数据库基础
第1 章 数据库入门 3
1.1 使用数据库的原因 3
1.1.1 关于列表的问题 4
1.1.2 使用关系数据库表 6
1.1.3 关系表的处理 10
1.2 数据库系统的概念 12
1.2.1 数据库 12
1.2.2 DBMS 13
1.2.3 个人数据库系统和企业级数据库系统 16
1.3 NoSQL 数据库的概念 21
1.4 Access 工作台:第一部分——熟悉Microsoft Access 21
1.4.1 Wallingford Motors 客户关系管理系统 21
1.4.2 创建Access 数据库 22
前沿
ColinJohnson 是西雅图一家小型制造厂的产品主管。几年前,Colin 计划构建一个数据库来跟踪产品包中的产品。开始时他用电子表格完成这一工作,却无法通过该表获取所需的报表。
Colin 听说了Microsoft Access,希望该软件能解决问题。经过几天的尝试,他发现无法掌握Access,于是购买了一些流行的Access 书籍并努力学习。不过最终他还是放弃了,而是聘请了一个顾问,该顾问创建了一个大致可满足Colin 要求的应用程序。一段时间以后,Colin 想修改此应用程序,但不敢进行这样的尝试。
Colin 是一名成功的商人,他能够主动地去实现他的目标。作为一名老练的Windows 用户,他可以通过自学掌握Excel、PowerPoint 以及大量面向生产的应用程序包。但他在使用Access解决问题时却停滞不前。Colin 认为“我确信我可以做到,但我没有更多的时间”。这样的事件非常引人注目,因为在过去的十年内这在很多人身上上演了无数次。
Microsoft、Oracle、IBM 和其他数据库管理系统(Database Management System,DBMS)厂商都意识到了这一情况,他们投入了数百万美元来创建更好的图形界面、数以百计的多窗格向导以及众多示例应用程序。遗憾的是,这样的努力无法从根本上解决问题。事实上,许多用户并不清楚向导可以实现哪些功能。一旦这些用户需要改变数据结构或组件(例如表和查询),就会陷入麻烦中,这令他们措手不及。如果不了解底层结构,这些用户就会无所适从。结果是数据库和应用程序设计得非常糟糕,无法满足要求。
为什么像Colin 这样的用户可以学会字处理软件或电子表格这样的产品,却学不会DBMS
产品?首先,许多人都不熟悉数据库的基本概念。尽管每个人可能都知道段落和边距的含义,但无法理解关系的概念。其次,他们可能觉得使用DBMS 产品应该更容易。“我们只想记录一些内容,为什么实现起来却这么困难?”如果不了解关系模型,在存储数据之前将一张销售发票分成五个单独的表就可能使商业用户感到困惑。
本书旨在帮助类似Colin 的读者理解、创建和使用DBMS 产品中的数据库,既适用于从书店购买本书的自学者,也适用于使用本书作为教材的学生。
本版的新内容
这一版中的新内容和特色将使学生和本书的其他读者受益,其中包括:
● Microsoft Office2013,特别是Microsoft Access 2013 是本书使用的基本软件,运行在 Windows 8.1 下。
● DBMS 软件更新为Microsoft SQL Server 2014 Express 版本和OracleMySQL 5.6 Community Server。
● 第3 章添加了介绍SQL 连接概念的内容,以使读者更容易理解。
● 附录E 添加了通过SQL/Persistent Stored Modules(SQL/PSM)进行SQL 编程的内容,以更好地组织这些以前散布在其他地方的内容。还讨论了如何把Microsoft Excel 工作表数据导入数据库。
● 本章简要介绍了Big Data(大数据)和NoSQL 运动的演变历史。这个内容主要在第8 章和新增的附录K 中讨论。第8 章还讨论了非关系型数据库的开发(例如Cassandra 和HBase)和DBC e06 首次引入的Hadoop 分布式文件系统。附录K 还详细讨论了Big Data设置中使用的NoSQL 数据库,供希望深入介绍这个主题的教师使用。
● 第7 章用Oracle NetBeans IDE 替代了Eclipse PDT IDE。Java JDK 和NetBeans 的集成安装文件可以下载,所以这些软件产品的安装就更容易了,参见附录I。NetBeans IDE还比EclipsePDT 更容易使用,学生创建第7 章使用的HTML 和PHP Web 页面也就更容易。
我们保留了DBC e06 中的所有主要创新,包括:
● 第7 章中的Web 数据库应用程序现在包含数据输入Web 表单页面。这样Web 数据库应用程序就可以用数据输入和数据读取Web 页面来创建。
● Microsoft Access2013 的介绍现在包含Microsoft Access switchboard 表单(参见附录H),它用于为数据库应用程序建立菜单。switchboard 表单可用于建立数据库应用程序,其中包含一个友好的主菜单,用户可以使用该菜单显示表单、打印报表、运行查询。
● 每章现在都包含一个独立的CaseQuestion 集。Case Question 集是一个问题集,一般不需要学生完成上一章中同一个案例的工作(有一个故意设置的例外,它把数据建模和数据库设计联系在一起)。在一些实例中,不同的章节可能使用同名的基本案例,但每个实例都完全独立于其他实例。
● 支持OracleDatabase Express Edition11gRelease 2。附录B 介绍了如何使用该产品和 OracleSQL Developer GUI 实用工具,这个附录只包括基本知识,书中的Oracle SQL Developer 屏幕图用于演示特定的概念。
必要的基本概念
如果不学习基本概念,只靠现有的技术就不可能成功使用DBMS。凭借多年来为商业用户开发数据库的经验,我们认为下面的数据库概念非常重要:
● 关系模型的基本概念
● 结构化查询语言(SQL)
● 数据建模
● 数据库设计
● 数据库管理
由于当前Internet、World Wide Web 和分析工具的广泛使用,以及NoSQL 运动的兴起,因此另外增加四个基本概念:
● Web 数据库处理
● 数据仓库结构
● 商业智能(BI)系统
● 非关系结构的数据存储
像Colin 这样的用户(或将来从事类似工作的学生)不需要像信息系统专家那样深入地了解这些主题。因此,本书只介绍最基本的概念,足以帮助Colin 这样的用户创建和使用小型数据库了。本书的许多内容在DavidM.Kroenke 和David J.Auer 的DatabaseProcessing: Fundamentals,Designs, and Implementation1 一书的基础上进行了重写和简化。不过在本书内容上我们也力求讨论准确,不会产生误导。即使学生已学习过更高级的数据库课程,也可从中获益。
独立于DBMS 产品的概念
本书假设学生没有使用过任何特殊的DBMS 产品,我们通过Microsoft Access、SQLServer Express 版、Oracle Database Express 版和MySQL Community Server 来演示数据库概念,使学生可以将这些产品作为工具真正试验书中的内容,而这些概念都是以DBMS 无关的方式出现。通
过这种方式学习,学生可以掌握适用于任意数据库的基本原则,包括小型的Microsoft Access数据库到大型的Microsoft SQL Server 或Oracle 数据库。而且这一方法也避免了一个常见的问
题:在同时介绍概念和产品时,学生容易混淆概念与产品特性和功能。例如,在讲授参照完整性约束时,如果从概念的角度讲授会说明这时一个表中的列值必须总是由另一个表中的列值提供,并解释这一约束出现在关系定义的上下文中的方式,以及DBMS 或应用程序如何强制执行这一约束。如果结合具体的DBMS 讲授,如Microsoft Access,学生就只知道:在某些情况下
选取复选框,而在其他情况下不选取。这很容易导致学生在学习产品特性时,会淡忘数据库的基本概念。
这并不是说教学中不应使用DBMS。相反,学生们可以通过使用商业DBMS 产品来更好地掌握这些概念。本书的这一版包括Microsoft Access、SQL Server Express 版、Oracle Database Express 版和MySQL 的足够多的基础信息,使你无须其他书籍或资料就可以在课堂上使用这些产品。
本书还深入介绍了MicrosoftAccess,因为它是一个非常流行的个人数据库产品,并且包括在Microsoft OfficeProfessional 应用程序套件中。但如果希望深入理解特定的DBMS 或使用本书没有介绍的DBMS 产品,则需要额外的书籍或资料。Pearson 提供了Microsoft Access 2013 和其他DBMS 产品的大量图书,可以结合本书一起学习。
Access 工作台
本书的这一版继续使用首次在第3 版引入的特征——“Access 工作台”。由于Microsoft Access 广泛用于初级数据库课程,因此介绍使用Microsoft Access 的特定信息比较重要。每一章都带有一个“Access 工作台”部分,其中使用Microsoft Access 来演示本章的概念和技术。
“Access 工作台”部分在第1 章中介绍了如何创建数据库和单个表,逐渐转移到不同主题,到最后第7 章介绍相对于Microsoft Access 数据库的Web 数据库处理,和第8 章介绍使用Microsoft 1. David M. Kroenke 和David J. Auer 著,Database Processing: Fundamentals, Design, and Implementation,第13 版(UpperSaddleRiver,NJ:Pearson/Prentice Hall, 2014)。
Access 和Microsoft Excel 生成PivotTable OLAP 报表。本书并非试图全面论述Microsoft Access,而是介绍所有必要的基本Access 主题,使学生可以有效地构建并使用Microsoft Access 数据库。
重要术语、复习题、练习题、案例和项目
学生能否运用所学的知识非常重要,因此每章都提供了重要术语表、复习题、练习题(包括针对“Access 工作台”的练习题)、案例问题集和三个贯穿本书始终的项目。如果学生阅读并理解了每一章的内容,就应能掌握每个重要术语的含义、能完成复习题。练习题要求学生将每章所讲的概念应用到具体的小问题或任务中。
第一个项目Garden Glory 向个人或企业提供园艺服务的合伙公司的数据库开发和使用。第二个项目James River 珠宝行分析了为一家零售店实施常客计划的数据库需求。第三个项目QueenAnne Curiosity 商店关注的是零售业的销售和库存需求。本书的所有章节都包括这三个项目(但James River 珠宝行项目的具体内容位于在线的附录D 中)。在每个实例中,都要求学生将各章的知识运用到项目中。教师会在教师手册中找到使用这些项目的更多信息,还可以从本书网站(www.pearsonhighered.com/kroenke)中受密码保护的教师部分获得数据库和数据。
本书使用的软件
与之前我们使用与DBMS 无关的方式进行讨论一样,本书将尽可能选择独立于操作系统的软件,目前网络上有非常多的杰出软件可以使用,许多大的DBMS 厂商都提供了其主要产品的免费版本(如Microsoft 的SQL Server Express 版,Oracle 公司的Oracle Database Express 版,和MySQL Community Server),Web 编辑器和集成开发环境(IDE)也很常用,例如Eclipse、NetBeans和Visual Studio Express 版。PHP 被认为是第四个最常用的编程语言,可以下载用于许多操作系统和Web 服务器。
所以尽管本书的示例是用Microsoft 操作系统、SQL Server 2014 Express 版、MicrosoftAccess 2013、Microsoft Excel 2013 和IIS Web 服务器创建的,但它们大都很容易用Linux、MySQL Server Community 版、Apache OpenOfficeBase、Apache OpenOffice Calc 和ApacheWeb 服务器创建。
本书使用的一些软件产品,如PHP 和Eclipse 都可用于多种操作系统。
在过去30 多年中,我们发现数据库和数据库应用程序的开发是一项愉快且有回报的活动。
我们相信:将来,数据库的数量、大小和重要性会不断增加,而该领域也越来越重要。希望本书介绍的概念、知识和技术帮助学生成功地参与到现在和多年后的数据库项目中。
对第6 版的改进本版最重要的改进是介绍了Big Data 的快速演变和相关的NoSQL 运动。存储和处理极大数据集的需求改变了数据库世界。尽管这些发展并没有改变本书介绍的数据库基础,但我们需要把本书核心的关系数据库放在数据库的总体框架下,并使读者理解Big Data 环境中使用的非关系结构的数据存储。因此,第8 章现在围绕Big Data 主题来组织,还介绍了数据仓库、群集的数据库服务器、分布式数据库、商务智能(BI)系统等。为了提供Big Data 的更多信息,新增了附录K,以深入讨论受本书篇幅所限未能讨论的内容。有些读者希望包含上一版的BI 内容,这部分不再放在第8 章,而放在附录J 中。
最后,第6 版新增的案例问题集仍独立于各章节。各章的项目把每一章的主题联系在一起,但案例问题并不需要学生完成前面各章的案例。第4、5 章的案例是一个例外,它把数据建模和数据库设计联系起来,但每一章仍包含一个独立的案例。在一些实例中,不同的章节可能使用同名的基本案例,但每个实例仍完全独立于其他实例。Web 站点www.pearsonhighered.com/kroenke 提供了必要的Microsoft Access 2013 数据库和SQL 脚本。
当然,本书还更新了所有其他产品的信息,尤其是包含新发布的Microsoft SQL Server 2014和MySQL 5.6Community Server。
我们继续保持并改进了本书前几版引入的几个特性:
● 在每章中使用“Access 工作台”介绍Microsoft Access 的基础知识,现在包含Microsoft Accessswitchboards(附录H)。
● 介绍Microsoft SQLServer 2014 Express 版(附录A)和Oracle Database Express Edition11gRelease 2(附录B)和Oracle MySQL 5.6 Community Server (附录C)的用法。附录A、附录B 和附录C 包含在本书配书光盘中。
● 使用示例数据集充分开发了在本书各个部分中使用的三个示例数据库:Wedgewood Pacific Corporation、HeatherSweeney Designs 和Wallingford Motors。
● PHP 脚本语言现在用于NetBeans IDE,在Web 数据库处理主题中使用PHP,目前包含Web 页面输入表单的代码。
● 在重新构建的第8 章中保留了多维数据库模型的内容,还介绍了OLAP。
为了给新内容腾出空间,我们只好把本书以前版本中的一些很有价值的内容移到光盘中,包括James River 珠宝行项目的问题目前在光盘的附录D 中,SQL 视图的内容目前在光盘的附录E 中,附录E 还添加了SQL Persistent Stored Modules(SQL/PSM)的内容,以及如何导入Microsoft Excel 数据。报表系统和数据挖掘的商务智能系统内容目前在光盘的附录J 中。
本书概要
本书包括8 章和11 个附录(附录内容包含在本书配书光盘中)。第1 章解释了使用数据库的原因、数据库的各个组件和开发方法。学生将学习数据库及其应用程序的用途、数据库相对于电子表格列表的差别和优势。第2 章介绍了关系模型,定义了基本的关系术语,还介绍了规范化原则的基本概念,并描述了规范化过程。
第3 章讲述了基本的SQL 语句,介绍了定义数据的基本SQL 语句,如SQL SELECT 语句
和数据修改语句。本书并不介绍高级的SQL 语句,只讲述基本语句。附录E 还介绍了SQL
视图。
接下来的两章讨论了数据库设计。第4 章使用实体-关系(E-R)模型解决数据建模问题,其中包括对数据建模的需求、基本的E-R 术语和概念,并提供了一个简短的E-R 建模示例应用程序(Heather Sweeney Designs)。第5 章讲述了数据库设计,解释了规范化的基本概念。第4 章示例中的数据模型在第5 章中则被转换为关系设计。
本版继续使用之前版本增加的较为有效的规范化讨论,使用一个四步过程来演示规范化关系的规定步骤。这种方法不仅简化了规范化任务,而且使规范化原理更易于理解,因此当前版本仍沿用了这一方法。教师如需更多了解范式,可参考第5 章中介绍的大多数范式的简短定义。
最后三章讨论了数据库管理,以及数据库在应用程序中的使用。第6 章概述了数据库管理,构建了一个作为功能数据库的示例数据库,并用作讨论数据库管理需求的示例。本章探讨了并发控制、安全性、备份及恢复技术。数据库管理主题很重要,因为它适用于所有数据库,即使是个人或单用户数据库也是如此。事实上,在某些方面这些主题对于小型数据库更重要,因为
它们没有专业的数据库管理员来确保关键任务的执行。
第7 章介绍了使用基于Web 的数据库处理,包括开放数据库连接(ODBC)和PHP 脚本语言的使用。本章也讨论了可扩展标记语言(XML)的出现和基本概念。
第8 章介绍了Big Data 和NoSQL 运动的新兴世界、探讨了商业智能(BI)系统和支持它们的数据仓库体系结构,但BI 系统的许多内容都移到了附录J。还讨论了多维数据库,解释了如何为Heather Sweeney Designs 建立多维数据库,并使用它生成PivotTable OLAP 报表。第8 章还讨论了分布式数据和面向对象的数据库。
附录A 提供了SQL Server 2014 Express 版的简介,附录B 则提供了Oracle Database ExpressEdition11gRelease 2 的类似介绍。附录C 则提供了MySQL 5.6 Community Server 的类似介绍。
在每章的“Access 工作台”中都包括了对Microsoft Access 的介绍。附录D 目前包含James River珠宝行项目的问题,SQL 视图的内容在附录E 中。附录F 介绍了系统分析与设计,可以为第4章(数据建模)和第5 章(数据库设计)提供参考——但本书主要关注数据库,数据库在应用程序中的使用。附录F 详细描述了应用程序的开发过程。附录G 简要介绍了Microsoft Visio 2013,可用作数据建模(第4 章)和数据库设计(第5 章)的工具。另一个有效的数据库设计工具是MySQL工作台,其用法参见附录C。附录H介绍了Microsoft Access switchboards,扩展了第5章的“Access工作台”一节。附录I 给出了启动和运转Microsoft IIS Web 服务器、PHP 和NetBeans PHP 开发工具(PDT)的详细指导,这些内容将有助于我们更好地学习第7 章。附录J 提供了报表系统和数据挖掘的内容,增加了商业智能(BI)系统的内容,以补充和支持第8 章。最后,附录K 提供了Big Data 和NoSQL 数据库的其他内容,以补充和支持第8 章。
在快速变化的环境下保持最新为使数据库的概念在各版中保持最新,我们将根据需要在本书的网站(www.pearsonhighered.com/kroenke)上贴出更新表。教师资源和学生资料也可以从网站上获得,所以应时常浏览本书的网站。
致谢
我们要感谢以下审稿人提出了高水平的、有益的意见和建议:
NamjooChoi,Kentucky 大学
DavidChou, Eastern Michigan 大学
GeoffreyDecker,Northern Illinois 大学
DeenaEngel,纽约大学
MarniFerner,North Carolina,Wilmington 大学
JeanHendrix,Arkansas 大学Monticello 分校
MaliniKrishnamurthi,加州州立大学Fullerton
RashmiMalhotra,St. Joseph’s 大学
GabrielM. Petersen,北加州中心大学
EliotRich,纽约州立大学Albany 分校
Liz Thiry,Pennsylvania 州立大学
BondWetherbe,Taxes 技术学院
DianeWolfe,Oklahoma 州立大学
我们还要感谢编辑Nicole Sam、策划经理Denise Vaughn、项目经理Ilene Kahn 对编写本书的专业支持和帮助,感谢Robert Mills、Robert Yoder 和Scott Vandenberg 对终稿的详细审阅。最后,David Kroenke 还要感谢妻子Lynda,David Auer 还要感谢妻子Donna 的爱和对作者完成本书的鼓励和忍耐。
DavidKroenke西雅图,华盛顿区David Auer贝灵翰姆,华盛顿区
数据库原理(第7版):使用Access 2013演示与实践(配光盘)(国外计算机科学经典教材) pdf下载声明
本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版