内容簡介
在信息時代,數據庫以及相關的應用程序已經成為各種商業活動和日常操作的核心,因此對數據庫原理的理解和把握就顯得至關重要。本書融入了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