内容简介
在信息时代,数据库以及相关的应用程序已经成为各种商业活动和日常操作的核心,因此对数据库原理的理解和把握就显得至关重要。本书融入了David M.Kroenke对数据库深入透彻的理解和丰富的实际操作经验,以深入浅出的语言形象生动地描绘了数据库原理及其应用,是数据库初学者和初级开发人员不可多得的数据库宝典。本书主要内容:关系模型的基础知识、结构化查询语言——SQL、数据建模、数据设计方案、数据库管理。
作者简介
DavidM.Kroenke在1967年作为RandCorporation公司的实习生时进入了计算行业,在此之后,他的职业生涯涉及教育、工业、顾问和出版等领域。
Kroenke曾经在科罗拉多州立大学、西雅图大学教学,目前在华盛顿大学教学。在多年的教学生涯中,他组织了数十次由大学教授参加的教学研讨会。在1991年,InternationalAssociationofInformationSystem授予他“年度计算机教育家”的荣誉称号。
在工业方面,Kroenke曾经为美国空军和波音计算机服务工作,并且负责创立了个公司。他也曾经是Microrim公司负责产品销售和开发的副主席,并且是WallData公司在数据库划分方面的首席技术专家。Kroenke是语义对象数据模型的创始者,他所拥有的咨询客户包括mM公司、Microsoft、ComputerSciences公司,以及许多其他的公司和组织。
Kroenke的著作DatabaseProcessing最初出版于1977年,现在已经是第10版。Kroenke也出版了其他许多书籍,包括经典的BusinessCompu~rSystems(198i)。他最近编写的书籍是UsingMIS的第1版。出于对成为海员的渴望,Kroenke也编写了KnowYourBoat:TheGuidetOEverythingThatMakesYourBoat Work。Kroenke现居住在华盛顿州的西雅图市,他结过婚,有两个孩子和两个外孙。
DavidJ.Auer目前是西华盛顿大学的CollegeofBusinessandEconomics(CBE)信息系统和技术服务的主管,并且是CBE的决策科学部门的讲师。他从1981年开始在CBE中任教,教授的课程包括QuantitativeMethods、ProductionandOperationsManagement、Statistics、FinanceandManagementInformationSystems。在1994年,他受雇于目前的CBE职位。除了管理CBE的计算机、网络和其他技术资源之外,他还教授ManagementInformationSystem课程。Auer负责教授PrinciplesofManagementInformationSystemsandBusinessDatabaseDevelopment课程,并且负责拓展CBE的网络基础结构课程,包括计算机硬件和操作系统、远程通信和网络管理。Auer已经和其他人合作编写了一些与MIS相关的书籍。
Auer在华盛顿大学获得了英语文学学士学位,在西华盛顿大学获得了数学和经济学学士学位,并且在西华盛顿大学获得经济学硕士学位和辅导心理学硕士学位。Auer是美国空军军官,他还作为组织开发专家和治疗专家为EmployeeAssistanceProgram(EAP)工作。Auer和妻子Donna居住在华盛顿州的贝灵汉市,他是当地计划委员会(PlanningCommission)的成员,并且积极参与社团成长和发展的相关问题。他有两个孩子和3个外孙。
编辑推荐
《数据库原理》介绍了成功管理数据库系统的基本概念,包括:
关系模型的基本原理
结构化查询语言(SQL)
数据建模
数据库设计
数据库管理
Web数据库处理
作品目录
第Ⅰ部分基础知识
第1章数据库简介3
1.1使用数据库的原因4
1.1.1关于列表的问题4
1.1.2使用关系数据库7
1.1.3关系表的处理13
1.2数据库系统的概念14
1.2.1数据库15
1.2.2DBMS16
1.2.3应用程序18
1.2.4个人数据库系统和企业数据库系统的比较20
1.3Access工作台:第1部分--熟悉MicrosoftAccess22
1.3.1创建Access数据库23
1.3.2创建数据库表26
1.3.3在表中插入数据--数据表视图34
1.3.4修改表中的数据--数据表视图37
1.3.5删除表中的行--数据表视图38
1.3.6在表中插入数据--使用表单40
1.3.7修改数据和删除记录--使用表单44
1.3.8创建一个表的Access报表44
1.3.9关闭数据库并退出Access47
1.4小结48
1.5复习题49
1.6练习题50
1.7Access工作台练习题51
1.8GardenGlory项目问题52
1.9JamesRiver珠宝行项目
问题52
1.10QueenAnneCuriosity商店项目问题53
第2章关系模型55
2.1关系56
2.1.1一个关系示例与两个非关系示例57
2.1.2显示关系结构的说明58
2.1.3术语说明59
2.2键的类型59
2.2.1复合键60
2.2.2候选键与主键60
2.2.3代理键63
2.2.4外键与参照完整性约束64
2.3NULL值的问题68
2.4函数依赖与规范化68
2.4.1函数依赖69
2.4.2再论主键与候选键70
2.4.3规范化71
2.4.4关系设计原则72
2.4.5规范化过程72
2.4.6规范化的示例74
2.5Access工作台:第二部分--在MicrosoftAccess中操作多个表79
2.5.1WMCRM数据库中可能的修改问题80
2.5.2操作多个表84
2.5.3创建表之间的关系86
2.5.4使用包括两个表的表单90
2.5.5创建包括两个表中数据的报表91
2.5.6关闭数据库并退出Access92
2.6小结93
2.7复习题94
2.8练习题95
2.9Access工作台练习题96
2.10GardenGlory项目问题99
2.11JamesRiverJewelry珠宝行项目问题100
2.12QueenAnneCuriosity商店项目问题101
第3章结构化查询语言105
3.1示例数据库106
3.2用于数据定义的SQL语句110
3.2.1使用表约束定义主键115
3.2.2使用表约束定义外键116
3.2.3向DBMS提交SQL语句118
3.3插入关系数据的SQL语句121
3.4SQL关系查询语句124
3.4.1SQLSELECT/FROM/WHERE架构124
3.4.2从单个表中读取指定列125
3.4.3从单个表中读取指定行127
3.4.4从单个表中读取指定行和指定列129
3.4.5在WHERE子句中指定范围、使用通配符和空值131
3.4.6对结果进行排序134
3.4.7SQL内置函数和计算135
3.4.8内置函数和分组138
3.4.9使用子查询处理多个表139
3.4.10使用连接查询多个表141
3.4.11SQLJOIN…ON语法145
3.4.12外部连接148
3.5修改和删除关系数据的SQL语句150
3.5.1修改数据150
3.5.2删除数据1523.6修改和删除表和约束的SQL语句153
3.6.1DROPTABLE和ALTERTABLE语句153
3.6.2CHECK约束154
3.7SQL视图155
3.8Access工作台:第三部分--在MicrosoftAccess中使用查询155
3.8.1使用MicrosoftAccessSQL156
3.8.2使用MicrosoftAccessQBE160
3.8.3使用MicrosoftAccess参数查询165
3.8.4使用MicrosoftAccess
SQL创建表166
3.8.5修改Access表以添加Access
SQL不支持的数据需求169
3.8.6使用MicrosoftAccessSQL插入数据174
3.8.7使用AccessSQL添加参照完整性约束177
3.8.8修改Access数据库以添加AccessSQL不支持的约束178
3.8.9关闭数据库并退出Access180
3.9小结181
3.10复习题182
3.11练习题184
3.12Access工作台练习题186
3.13GardenGlory项目问题189
3.14JamesRiver珠宝行项目问题190
3.15QueenAnneCuriosity商店项目问题192
第Ⅱ部分数据库设计和管理
第4章数据建模与实体-关系模型197
4.1需求分析阶段198
4.2实体-关系数据模型199
4.2.1实体199
4.2.2属性200
4.2.3标识符200
4.2.4关系201
4.3实体-关系图204
4.3.1E-R模型的不同版本205
4.3.2数据建模产品中E-R模型的变化205
4.3.3弱实体207
4.3.4ID依赖实体207
4.3.5非标识符依赖的弱实体209
4.3.6子类实体212
4.3.7递归关系213
4.4开发E-R图示例214
4.4.1HeatherSweeneyDesigns公司的数据库214
4.4.2培训课的客户列表214
4.4.3给客户的信函模板216
4.4.4销售发货单219
4.4.5属性说明222
4.4.6业务规则224
4.4.7验证数据模型224
4.5Access工作台:第四部分--使用MicrosoftAccess来开发原型225
4.5.1为原始的数据模型创建表单模型226
4.5.2为修改过的数据模型创建表单原型228
4.5.3Access的BandedFormandReportEditors230
4.5.4关闭数据库并退出Access231
4.6小结231
4.7复习题232
4.8练习题234
4.9Access工作台练习题234
4.10GardenGlory项目问题235
4.11JamesRiverJewelry项目问题235
4.12QueenAnneCuriosity商店项目问题236
第5章数据库设计239
5.1把数据模型转换为数据库的设计方案240
5.2使用关系模型表示实体241
5.2.1ITEM实体的表示241
5.2.2CUSTOMER实体的表示243
5.2.3SALES-COMMISSION实体的关系设计246
5.2.4弱实体的表示247
5.3关系的表示251
5.3.1强实体中的关系251
5.3.2使用了弱实体的关系258
5.3.3子型实体关系的表示259
5.3.4递归关系的表示260
5.4HeatherSweeneyDesigns公司的数据库设计264
5.4.1弱实体265
5.4.2关系265
5.4.3强制参照完整性266
5.5Access工作台:第五部分--MicrosoftAccess中的关系268
5.5.1Access中的多对多关系268
5.5.2Access中的一对一关系268
5.5.3关闭数据库并退出Access273
5.6小结273
5.7复习题274
5.8练习题276
5.9Access工作台练习题276
5.10GardenGlory公司项目问题277
5.11JamesRiver珠宝行项目问题277
5.12QueenAnneCuriosity商店项目问题278
第6章数据库管理279
6.1HeatherSweeneyDesigns公司的数据库280
6.2并发控制287
6.2.1使用原子事务的必要性287
6.2.2并发事务处理288
6.2.3丢失更新问题289
6.2.4并发问题:脏读取、不可重复读取和幻象读取290
6.2.5资源锁定290
6.2.6串行化事务292
6.2.7死锁292
6.2.8乐观锁定和悲观锁定293
6.2.9声明锁定特征294
6.2.10一致事务295
6.2.11事务隔离级别296
6.3游标类型297
6.4数据库安全298
6.4.1用户账户299
6.4.2处理权限和责任300
6.4.3DBMS级别的安全304
6.4.4应用程序级别的安全305
6.5数据库备份与恢复306
6.5.1通过重新处理进行恢复306
6.5.2通过回滚和前滚进行恢复307
6.5.3DBA的其他职责310
6.6分布式数据库的处理310
6.6.1分布式数据库的类型310
6.6.2分布式数据库面临的挑战312
6.7对象-关系数据库313
6.8Access工作台:第六部分--MicrosoftAccess中的数据库管理313
6.8.1Access中的数据库安全314
6.8.2受保护数据库的使用322
6.8.3受保护数据库的管理324
6.8.4关闭数据库并退出Access324
6.9小结324
6.10复习题326
6.11练习题328
6.12Access工作台练习题329
6.13GardenGlory项目问题330
6.14JamesRiver珠宝行项目问题331
6.15QueenAnneCuriosity商店项目问题332
第7章数据库处理应用程序和商业智能335
7.1数据库处理的环境336
7.1.1查询、表单和报表337
7.1.2客户机/服务器以及传统的应用程序处理339
7.1.3存储过程和触发器339
7.2Web数据库处理340
7.2.1ODBC342
7.2.2使用IIS进行Web处理345
7.2.3ActiveServerPages(ASP)349
7.2.4ActiveDataObjects(ADO)352
7.2.5Web数据库处理面临的挑战358
7.3数据库处理和XML358
7.3.1XML模式文件359
7.3.2XML和数据库处理360
7.3.3XMLWebServices362
7.4商业智能系统363
7.5Access工作台:第七部分:使用MicrosoftAccess进行Web数据库处理367
7.5.1WallingfordMotors的Web主页367
7.5.2选择数据库文件369
7.5.3创建ODBC数据源370
7.5.4创建客户联系方式的视图371
7.5.5创建ASP页面372
7.5.6运行ASP页面374
7.5.7关闭374
7.6小结375
7.7复习题376
7.8练习题378
7.9Access工作台练习题380
7.10GardenGlory公司项目问题381
7.11JamesRiverJewelry珠宝行项目问题381
7.12QueenAnneCuriosity商店项目问题382
附录AMicrosoftSQLServer2005ExpressEdition简介383
附录BMySQL简介395
附录CSQL视图409
术语表427