出版時(shí)間:2011-6 出版社:清華大學(xué) 作者:高云 編
前言
前言 為適應(yīng)高職院校應(yīng)用型人才培養(yǎng)迅速發(fā)展的趨勢(shì),培養(yǎng)以就業(yè)市場(chǎng)為導(dǎo)向的、具備“職業(yè)化”特征的高級(jí)應(yīng)用型人才,“任務(wù)驅(qū)動(dòng)、項(xiàng)目導(dǎo)向”已成為高職院校主流的教學(xué)模式。本書以Microsoft SQL Server 2008(以下一般簡稱為SQL Server 2008)為數(shù)據(jù)庫管理系統(tǒng),通過完成一個(gè)完整的學(xué)生管理系統(tǒng),引導(dǎo)學(xué)生掌握SQL Server 2008的使用和管理?!? 本書特色 本書采用最新的“工作過程導(dǎo)向”編寫模式,以“工作場(chǎng)景導(dǎo)入”→“知識(shí)講解”→“回到工作場(chǎng)景”→“工作實(shí)訓(xùn)”→“課后練習(xí)”為主線推進(jìn)學(xué)習(xí)進(jìn)程。每一章針對(duì)數(shù)據(jù)庫設(shè)計(jì)和實(shí)施中的一個(gè)工作過程環(huán)節(jié)來傳授相關(guān)的課程內(nèi)容,實(shí)現(xiàn)實(shí)踐技能與理論知識(shí)的整合,將工作環(huán)境與學(xué)習(xí)環(huán)境有機(jī)地結(jié)合在一起。本書內(nèi)容簡明扼要,結(jié)構(gòu)清晰,通過工作過程的講解將關(guān)系數(shù)據(jù)庫的理論知識(shí)和SQL Server 2008的使用方法有機(jī)結(jié)合在一起,示例眾多,步驟明確,講解細(xì)致,突出可操作性和實(shí)用性。再輔以豐富的實(shí)訓(xùn)和課后練習(xí),使學(xué)生得到充足的訓(xùn)練,具備使用SQL Server 2008解決實(shí)際問題的能力?!? 本書由高職院校的優(yōu)秀教師編寫,是在其現(xiàn)有教學(xué)成果基礎(chǔ)上整合編寫而成的,作者擁有豐富的開發(fā)案例和教學(xué)經(jīng)驗(yàn)?!? 本書主要內(nèi)容 本書共分14章,需要授課60個(gè)課時(shí),用一學(xué)期進(jìn)行學(xué)習(xí)?!? 第1章介紹學(xué)生管理數(shù)據(jù)庫的設(shè)計(jì)。通過本章任務(wù)的完成,主要學(xué)習(xí)數(shù)據(jù)庫的基本概念、發(fā)展歷史、系統(tǒng)結(jié)構(gòu),數(shù)據(jù)庫的需求分析、概念模型設(shè)計(jì)、邏輯模型設(shè)計(jì)、物理模型設(shè)計(jì),了解SQL Server 2008組件,為后面使用SQL Server 2008做好準(zhǔn)備。 第2章講解如何創(chuàng)建學(xué)生管理數(shù)據(jù)庫。通過本章任務(wù)的完成,主要掌握SQL Server數(shù)據(jù)庫的分類和組成的文件,了解SQL Server數(shù)據(jù)庫中數(shù)據(jù)的存儲(chǔ)方式,掌握創(chuàng)建數(shù)據(jù)庫的方法,掌握文件組的概念、作用和創(chuàng)建的方法?!? 第3章介紹如何創(chuàng)建學(xué)生管理數(shù)據(jù)庫中的五個(gè)表,設(shè)置表的數(shù)據(jù)完整性,并在表中錄入記錄。通過本章任務(wù)的完成,掌握使用SQL Server系統(tǒng)數(shù)據(jù)類型和創(chuàng)建用戶定義數(shù)據(jù)類型的方法,創(chuàng)建、修改、刪除表的方法,在表中錄入記錄的方法,以及數(shù)據(jù)完整性的概念、分類和具體實(shí)施方法。 第4章通過在學(xué)生管理數(shù)據(jù)庫的表中使用T-SQL語句插入、更新和刪除記錄,學(xué)習(xí)插入單個(gè)記錄和多個(gè)記錄的方法、更新記錄(包括根據(jù)子查詢更新記錄)的方法、刪除記錄(包括根據(jù)子查詢刪除記錄)的方法、清空表的方法。 第5章講解如何查詢學(xué)生管理數(shù)據(jù)庫中的記錄,學(xué)習(xí)簡單查詢、多表連接和子查詢。 第6章介紹了三個(gè)任務(wù),第一個(gè)任務(wù)是判斷閏年,講解T-SQL語言基礎(chǔ)知識(shí),包括T-SQL 語法要素、T-SQL程序;第二個(gè)任務(wù)是帶錯(cuò)誤信息提示的單語句插入記錄操作,介紹T-SQL語言中的錯(cuò)誤信息處理;第三個(gè)任務(wù)是帶錯(cuò)誤信息提示的多語句更新記錄操作,介紹了事務(wù)的概念、屬性、分類和使用。 第7章介紹了四個(gè)任務(wù),前三個(gè)任務(wù)是關(guān)于一個(gè)可以查詢所有學(xué)生的姓名、課程名稱和成績視圖的創(chuàng)建、使用和修改,學(xué)習(xí)視圖的概念、分類、創(chuàng)建和使用;第四個(gè)任務(wù)是在學(xué)生表上分別創(chuàng)建兩個(gè)索引,學(xué)習(xí)索引的概念、分類、創(chuàng)建、設(shè)計(jì)和優(yōu)化?!? 第8章通過統(tǒng)計(jì)學(xué)生的學(xué)期課程門數(shù)及其成績,以及各門課程的最高分和最低分,來學(xué)習(xí)用戶自定義函數(shù)的概念、作用、分類和使用。 第9章講解創(chuàng)建存儲(chǔ)過程用于重復(fù)的查詢?nèi)蝿?wù),介紹存儲(chǔ)過程的概念、分類和作用,介紹創(chuàng)建和使用存儲(chǔ)過程的方法,介紹存儲(chǔ)過程中輸入?yún)?shù)和輸出參數(shù)的使用方法?!? 第10章介紹了四個(gè)任務(wù),前三個(gè)任務(wù)是根據(jù)學(xué)生表的學(xué)生記錄的插入、更新和刪除操作來修改班級(jí)表中該班級(jí)的人數(shù),第四個(gè)任務(wù)是防止數(shù)據(jù)庫中成績表的結(jié)構(gòu)被隨意修改。通過本章任務(wù)的完成,學(xué)習(xí)觸發(fā)器的概念、分類、工作原理、創(chuàng)建和使用?!? 第11章通過控制數(shù)據(jù)庫管理員、教師用戶、學(xué)生用戶對(duì)學(xué)生管理數(shù)據(jù)庫和成績表的操作權(quán)限,來講解SQL Server 2008的安全機(jī)制和驗(yàn)證模式,介紹登錄、用戶、權(quán)限的創(chuàng)建與管理,角色的概念、分類、創(chuàng)建和使用?!? 第12章講解學(xué)生管理數(shù)據(jù)庫的備份和還原,包括備份和還原的概念,備份的類型,創(chuàng)建完整數(shù)據(jù)庫備份、事務(wù)日志備份、差異備份和文件或文件組備份的方法,以及還原各種備份的方法?!? 第13章通過將學(xué)生管理數(shù)據(jù)庫中10701班學(xué)生個(gè)人信息的導(dǎo)入和導(dǎo)出,學(xué)習(xí)SSIS的作用和工作方式,掌握創(chuàng)建和執(zhí)行SSIS包來導(dǎo)入和導(dǎo)出數(shù)據(jù)庫中數(shù)據(jù)的方法?!? 第14章設(shè)計(jì)并完成了基于Windows的學(xué)生管理系統(tǒng)和基于Web的學(xué)生管理系統(tǒng)。通過本任務(wù)的完成,學(xué)習(xí)Windows應(yīng)用程序的創(chuàng)建方法、Web應(yīng)用程序的創(chuàng)建方法、注冊(cè)和登錄頁面的設(shè)計(jì)方法,以及學(xué)生信息查詢功能的實(shí)現(xiàn)方法?!? 讀者對(duì)象 本書作為Microsoft SQL Server 2008入門類教材,既可以作為高等職業(yè)教育計(jì)算機(jī)及相關(guān)專業(yè)的教材,也可作為等級(jí)考試、職業(yè)資格考試或認(rèn)證考試等各種培訓(xùn)班的培訓(xùn)教材,還可用于讀者自學(xué)。 本書由高云(南京信息職業(yè)技術(shù)學(xué)院)任主編,崔艷春(南京信息職業(yè)技術(shù)學(xué)院)任副主編,其中第1~7章由高云編寫,第8~14章由崔艷春編寫,由高云負(fù)責(zé)統(tǒng)稿。全書框架結(jié)構(gòu)由何光明擬定。另外,本書的編寫得到陳海燕、王珊珊、吳濤濤、趙梨花、張伍榮、李海、趙明、吳婷、許勇、姚昌順、戴仕明等同志的大力支持和幫助,在此表示感謝。限于作者水平,書中難免存在不當(dāng)之處,懇請(qǐng)廣大讀者批評(píng)指正?!? 編 者
內(nèi)容概要
《sql server
2008數(shù)據(jù)庫技術(shù)實(shí)用教程》是采用“工作過程導(dǎo)向”模式規(guī)范編寫的教材,全書共14章,可分為兩大部分:數(shù)據(jù)庫的創(chuàng)建和數(shù)據(jù)庫的管理?!秙ql
server
2008數(shù)據(jù)庫技術(shù)實(shí)用教程》的內(nèi)容組織以關(guān)系數(shù)據(jù)庫理論知識(shí)為基礎(chǔ),注重操作技能的培養(yǎng)和實(shí)際問題的解決,旨在使學(xué)生掌握microsoft
sql server 2008的使用和管理?!秙ql server
2008數(shù)據(jù)庫技術(shù)實(shí)用教程》以創(chuàng)建“學(xué)生管理系統(tǒng)”數(shù)據(jù)庫為工作任務(wù),具體內(nèi)容包括設(shè)計(jì)數(shù)據(jù)庫、創(chuàng)建數(shù)據(jù)庫、創(chuàng)建表、更新和查詢記錄、t-sql語言、視圖和索引、用戶自定義函數(shù)、存儲(chǔ)過程、觸發(fā)器、管理數(shù)據(jù)庫安全、備份和還原數(shù)據(jù)庫、導(dǎo)入和導(dǎo)出數(shù)據(jù)庫中的數(shù)據(jù)。最后一章介紹了學(xué)生管理系統(tǒng)應(yīng)用程序的設(shè)計(jì)和實(shí)施,從而完成了一個(gè)完整的數(shù)據(jù)庫系統(tǒng)。本書貼切實(shí)際,結(jié)構(gòu)合理,內(nèi)容豐富,操作方便。
《sql server 2008數(shù)據(jù)庫技術(shù)實(shí)用教程》作為microsoft sql server
2008的入門類教材,既可以作為高等職業(yè)教育計(jì)算機(jī)及相關(guān)專業(yè)的教材,也可作為等級(jí)考試、職業(yè)資格考試或認(rèn)證考試等各種培訓(xùn)班的培訓(xùn)教材,還可用于讀者自學(xué)。
書籍目錄
第1章 設(shè)計(jì)數(shù)據(jù)庫
1.1 工作場(chǎng)景導(dǎo)入
1.2 數(shù)據(jù)庫概述
1.2.1 數(shù)據(jù)庫基本概念
1.2.2 數(shù)據(jù)庫發(fā)展歷史
1.2.3 數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)
1.3 需求分析
1.3.1 需求分析的任務(wù)
1.3.2 需求分析的方法
1.3.3 需求分析的成果
1.4 概念模型設(shè)計(jì)
1.4.1 數(shù)據(jù)模型
1.4.2 概念模型
1.4.3 概念模型設(shè)計(jì)的任務(wù)
1.4.4 概念模型設(shè)計(jì)的方法
1.4.5 概念模型設(shè)計(jì)的成果
1.4.6 實(shí)體-聯(lián)系模型
1.5 邏輯模型設(shè)計(jì)
1.5.1 邏輯模型
1.5.2 關(guān)系模型概念
1.5.3 邏輯模型設(shè)計(jì)的任務(wù)
1.5.4 關(guān)系模型設(shè)計(jì)的方法
1.6 物理模型設(shè)計(jì)
1.6.1 物理模型設(shè)計(jì)的任務(wù)
1.6.2 物理模型設(shè)計(jì)的方法
1.7 數(shù)據(jù)庫實(shí)現(xiàn)、運(yùn)行和維護(hù)
1.8 sql server 2008簡介
1.8.1 sql server 2008產(chǎn)品性能
1.8.2 sql server 2008產(chǎn)品版本
1.8.3 sql server 2008管理工具
1.9 回到工作場(chǎng)景
1.10 工作實(shí)訓(xùn)營
1.10.1 訓(xùn)練實(shí)例
1.10.2 工作實(shí)踐常見問題解析
1.11 習(xí)題
第2章 創(chuàng)建數(shù)據(jù)庫
2.1 工作場(chǎng)景導(dǎo)入
2.2 sql server數(shù)據(jù)庫
2.2.1 sql server數(shù)據(jù)庫類型
2.2.2 數(shù)據(jù)庫的文件組成
2.2.3 事務(wù)和事務(wù)日志
2.2.4 數(shù)據(jù)存儲(chǔ)方式
2.3 數(shù)據(jù)庫的創(chuàng)建與操作
2.3.1 創(chuàng)建數(shù)據(jù)庫
2.3.2 查看數(shù)據(jù)庫
2.3.3 修改數(shù)據(jù)庫
2.3.4 刪除數(shù)據(jù)庫
2.4 文件組及其創(chuàng)建與使用
2.4.1 文件組
2.4.2 創(chuàng)建文件組
2.4.3 使用文件組
2.5 回到工作場(chǎng)景
2.6 工作實(shí)訓(xùn)營
2.6.1 訓(xùn)練實(shí)例
2.6.2 工作實(shí)踐常見問題解析
2.7 習(xí)題
第3章 創(chuàng)建和管理表
3.1 工作場(chǎng)景導(dǎo)入
3.2 數(shù)據(jù)類型
3.2.1 sql server數(shù)據(jù)類型
3.2.2 用戶定義數(shù)據(jù)類型
3.2.3 創(chuàng)建用戶定義數(shù)據(jù)類型
3.3 表的創(chuàng)建與操作
3.3.1 創(chuàng)建表
3.3.2 在表中錄入記錄
3.3.3 修改表
3.3.4 刪除表
3.4 數(shù)據(jù)完整性
3.4.1 數(shù)據(jù)完整性及其分類
3.4.2 primary key約束
3.4.3 unique約束
3.4.4 default 定義
3.4.5 check約束
3.4.6 foreign key約束
3.5 回到工作場(chǎng)景
3.6 工作實(shí)訓(xùn)營
3.6.1 訓(xùn)練實(shí)例
3.6.2 工作實(shí)踐常見問題解析
3.7 習(xí)題
第4章 插入、更新和刪除記錄
4.1 工作場(chǎng)景導(dǎo)入
4.2 插入記錄
4.2.1 插入單個(gè)記錄
4.2.2 插入多個(gè)記錄
4.3 更新記錄
4.3.1 簡單更新記錄
4.3.2 使用子查詢更新記錄
4.4 刪除記錄
4.4.1 簡單刪除記錄
4.4.2 清空記錄
4.4.3 使用子查詢刪除記錄
4.5 回到工作場(chǎng)景
4.6 工作實(shí)訓(xùn)營
4.6.1 訓(xùn)練實(shí)例
4.6.2 工作實(shí)踐常見問題解析
4.7 習(xí)題
第5章 查詢
5.1 工作場(chǎng)景導(dǎo)入
5.2 簡單查詢
5.2.1 結(jié)果集字段列表
5.2.2 查詢的篩選條件
5.2.3 結(jié)果集格式
5.2.4 分組匯總
5.3 多表連接
5.3.1 表的別名
5.3.2 內(nèi)連接
5.3.3 外連接
5.3.4 交叉連接
5.3.5 自連接
5.3.6 多表連接
5.4 子查詢
5.4.1 子查詢用做單個(gè)值
5.4.2 子查詢用做集合
5.4.3 相關(guān)子查詢
5.5 回到工作場(chǎng)景
5.6 工作實(shí)訓(xùn)營
5.6.1 訓(xùn)練實(shí)例
5.6.2 工作實(shí)踐常見問題解析
5.7 習(xí)題
第6章 使用t-sql語言
6.1 工作場(chǎng)景導(dǎo)入
6.2 t-sql 語言
6.3 t-sql語法要素
6.3.1 標(biāo)識(shí)符
6.3.2 數(shù)據(jù)類型
6.3.3 常量
6.3.4 變量
6.3.5 運(yùn)算符
6.3.6 表達(dá)式
6.3.7 函數(shù)
6.3.8 注釋
6.3.9 保留關(guān)鍵字
6.4 t-sql程序
6.4.1 控制流
6.4.2 批處理
6.4.3 腳本
6.5 錯(cuò)誤信息處理
6.5.1 try...catch
6.5.2 @@error系統(tǒng)函數(shù)
6.6 事務(wù)
6.6.1 事務(wù)的概念及其屬性
6.6.2 事務(wù)的分類及其使用
6.7 回到工作場(chǎng)景
6.8 工作實(shí)訓(xùn)營
6.8.1 訓(xùn)練實(shí)例
6.8.2 工作實(shí)踐常見問題解析
6.9 習(xí)題
第7章 使用視圖和索引優(yōu)化查詢
7.1 工作場(chǎng)景導(dǎo)入
7.2 視圖
7.2.1 視圖及其分類
7.2.2 創(chuàng)建視圖
7.2.3 使用視圖
7.2.4 修改視圖
7.2.5 刪除視圖
7.3 索引
7.3.1 索引及其分類
7.3.2 創(chuàng)建索引
7.3.3 修改索引
7.3.4 刪除索引
7.3.5 設(shè)計(jì)和優(yōu)化索引
7.4 回到工作場(chǎng)景
7.5 工作實(shí)訓(xùn)營
7.5.1 訓(xùn)練實(shí)例
7.5.2 工作實(shí)踐常見問題解析
7.6 習(xí)題
第8章 用戶自定義函數(shù)
8.1 工作場(chǎng)景導(dǎo)入
8.2 用戶自定義函數(shù)介紹
8.2.1 標(biāo)量值函數(shù)
8.2.2 內(nèi)聯(lián)表值函數(shù)
8.2.3 多語句表值函數(shù)
8.3 創(chuàng)建用戶自定義函數(shù)
8.3.1 創(chuàng)建標(biāo)量值函數(shù)
8.3.2 創(chuàng)建內(nèi)聯(lián)表值函數(shù)
8.3.3 創(chuàng)建多語句表值函數(shù)
8.4 使用用戶自定義函數(shù)
8.4.1 使用標(biāo)量值函數(shù)
8.4.2 使用內(nèi)聯(lián)表值函數(shù)
8.4.3 使用多語句表值函數(shù)
8.5 修改用戶自定義函數(shù)
8.6 刪除用戶自定義函數(shù)
8.7 回到工作場(chǎng)景
8.8 工作實(shí)訓(xùn)營
8.8.1 訓(xùn)練實(shí)例
8.8.2 工作實(shí)踐常見問題解析
8.9 習(xí)題
第9章 存儲(chǔ)過程
9.1 工作場(chǎng)景導(dǎo)入
9.2 存儲(chǔ)過程介紹
9.3 不帶參數(shù)的存儲(chǔ)過程
9.3.1 創(chuàng)建存儲(chǔ)過程
9.3.2 使用存儲(chǔ)過程
9.3.3 修改存儲(chǔ)過程
9.3.4 刪除存儲(chǔ)過程
9.4 帶參數(shù)的存儲(chǔ)過程
9.4.1 帶輸入?yún)?shù)的存儲(chǔ)過程
9.4.2 帶輸出參數(shù)的存儲(chǔ)過程
9.5 回到工作場(chǎng)景
9.6 工作實(shí)訓(xùn)營
9.6.1 訓(xùn)練實(shí)例
9.6.2 工作實(shí)踐常見問題解析
9.7 習(xí)題
第10章 觸發(fā)器
10.1 工作場(chǎng)景導(dǎo)入
10.2 觸發(fā)器介紹
10.2.1 insert觸發(fā)器
10.2.2 delete觸發(fā)器
10.2.3 update觸發(fā)器
10.2.4 instead of觸發(fā)器
10.3 創(chuàng)建觸發(fā)器
10.3.1 創(chuàng)建dml觸發(fā)器
10.3.2 創(chuàng)建ddl觸發(fā)器
10.4 使用觸發(fā)器
10.5 修改觸發(fā)器
10.6 刪除觸發(fā)器
10.7 回到工作場(chǎng)景
10.8 工作實(shí)訓(xùn)營
10.8.1 訓(xùn)練實(shí)例
10.8.2 工作實(shí)踐常見問題解析
10.9 習(xí)題
第11章 管理數(shù)據(jù)庫安全
11.1 工作場(chǎng)景導(dǎo)入
11.2 sql server 2008安全機(jī)制
11.3 sql server 2008驗(yàn)證模式
11.3.1 windows身份驗(yàn)證
11.3.2 混合身份驗(yàn)證
11.4 windows登錄
11.4.1 創(chuàng)建windows登錄
11.4.2 創(chuàng)建sql server登錄
11.4.3 管理登錄名
11.5 數(shù)據(jù)庫用戶
11.5.1 創(chuàng)建數(shù)據(jù)庫用戶
11.5.2 管理數(shù)據(jù)庫用戶
11.6 權(quán)限
11.6.1 權(quán)限類型
11.6.2 設(shè)置用戶權(quán)限
11.7 角色
11.7.1 角色分類
11.7.2 創(chuàng)建角色
11.7.3 指派角色
11.8 回到工作場(chǎng)景
11.9 工作實(shí)訓(xùn)營
11.9.1 訓(xùn)練實(shí)例
11.9.2 工作實(shí)踐常見問題解析
11.10 習(xí)題
第12章 備份和還原數(shù)據(jù)庫
12.1 工作場(chǎng)景導(dǎo)入
12.2 備份和還原
12.2.1 備份
12.2.2 還原
12.3 完整數(shù)據(jù)庫備份
12.3.1 創(chuàng)建備份
12.3.2 還原備份
12.4 數(shù)據(jù)庫和事務(wù)日志備份
12.4.1 創(chuàng)建備份
12.4.2 還原備份
12.5 差異備份
12.5.1 創(chuàng)建備份
12.5.2 還原備份
12.6 文件或文件組備份
12.6.1 創(chuàng)建備份
12.6.2 還原備份
12.7 回到工作場(chǎng)景
12.8 工作實(shí)訓(xùn)營
12.8.1 訓(xùn)練實(shí)例
12.8.2 工作實(shí)踐常見問題解析
12.9 習(xí)題
第13章 導(dǎo)入和導(dǎo)出數(shù)據(jù)庫中的數(shù)據(jù)
13.1 工作場(chǎng)景導(dǎo)入
13.2 ssis
13.2.1 ssis介紹
13.2.2 ssis工作方式
13.3 使用ssis
13.3.1 創(chuàng)建ssis包
13.3.2 執(zhí)行ssis包
13.4 回到工作場(chǎng)景
13.5 工作實(shí)訓(xùn)營
13.5.1 訓(xùn)練實(shí)例
13.5.2 工作實(shí)踐常見問題解析
13.6 習(xí)題
第14章 學(xué)生管理系統(tǒng)案例
14.1 工作場(chǎng)景導(dǎo)入
14.2 程序設(shè)計(jì)介紹
14.2.1 microsoft visual studio 2008集成環(huán)境
14.2.2 c#語言
14.2.3 asp.net
14.3 回到工作場(chǎng)景
14.3.1 基于windows的學(xué)生管理系統(tǒng)
14.3.2 基于web的學(xué)生管理系統(tǒng)
14.4 工作實(shí)訓(xùn)營
附錄 各章習(xí)題參考答案
章節(jié)摘錄
版權(quán)頁:插圖:第一范式是指表的每一列都是不可分割的基本數(shù)據(jù)項(xiàng),同一列中不能有多個(gè)值,不能存在兩條記錄具有完全相同的各屬性值。在任何一個(gè)關(guān)系數(shù)據(jù)庫中,第一范式是對(duì)關(guān)系模式的基本要求,不滿足第一范式的數(shù)據(jù)庫就不是關(guān)系數(shù)據(jù)庫。例如,學(xué)生信息表包含學(xué)生編號(hào)、學(xué)生姓名、班級(jí)編號(hào)和聯(lián)系方式,其中聯(lián)系方式不能將電話、地址和郵編這3類數(shù)據(jù)合在一列中顯示,解決的方法是在學(xué)生信息表中設(shè)置電話、地址和郵編3列,分別保存這3部分?jǐn)?shù)據(jù)。一個(gè)學(xué)生的記錄只能對(duì)應(yīng)于學(xué)生信息表中的一條記錄,不能有兩條記錄同時(shí)對(duì)應(yīng)于一個(gè)學(xué)生。第二范式建立在第一范式的基礎(chǔ)上,即滿足第二范式必須先滿足第一范式。第二范式要求實(shí)體的屬性完全依賴于主碼,即不能存在僅依賴主碼一部分的屬性。如果存在,那么這個(gè)屬性和主碼的這一部分應(yīng)該分解形成一個(gè)新的實(shí)體,新實(shí)體與原實(shí)體之間是一對(duì)多的關(guān)系。第二范式其實(shí)就是非主屬性,不能部分依賴于主碼。例如,成績表包含學(xué)生編號(hào)、課程編號(hào)、成績、學(xué)生姓名、班級(jí)編號(hào),主鍵是學(xué)生編號(hào)和課程編號(hào)。但是,學(xué)生姓名和班級(jí)編號(hào)屬性可以由學(xué)生編號(hào)屬性推知,因此成績表的結(jié)構(gòu)不符合第二范式。這樣設(shè)計(jì)的表在使用中有很多問題,插入一個(gè)學(xué)生的所有課程成績將反復(fù)插入該學(xué)生的基本信息,如果刪除該學(xué)生的所有課程成績將導(dǎo)致刪除該學(xué)生的基本信息,如果該學(xué)生的基本信息有變化又需要將其所有的成績記錄進(jìn)行更新。為了解決數(shù)據(jù)冗余和重復(fù)操作的問題,可以將其中的學(xué)生編號(hào)、學(xué)生姓名和班級(jí)分解出來,形成學(xué)生信息表,原有的成績表保留學(xué)生編號(hào)、課程編號(hào)和成績。這樣調(diào)整可使得兩個(gè)表均滿足第二范式的要求。第三范式建立在第二范式的基礎(chǔ)上,要求一個(gè)數(shù)據(jù)庫表中不包含在其他表中已包含的非主碼信息,即第三范式就是屬性不依賴于其他非主屬性,也就是不存在傳遞依賴。例如,班級(jí)信息表包含班級(jí)編號(hào)、班級(jí)名稱、系名稱、系簡介,主碼是班級(jí)編號(hào)。如果插入同一個(gè)系的兩個(gè)班級(jí)的信息,將產(chǎn)生兩條記錄,其中系名稱和系簡介完全一樣。其實(shí),同一個(gè)系的系名稱和系簡介是一樣的。這樣又會(huì)產(chǎn)生大量的數(shù)據(jù)冗余??梢蕴砑酉敌畔⒈?,系信息表包含系編號(hào)、系名稱、系簡介,主碼是系編號(hào),在班級(jí)信息表中刪除系名稱和系簡介,添加系編號(hào)。這樣使得數(shù)據(jù)庫滿足第三范式的要求。BCNF是指關(guān)系模式的所有屬性都不傳遞依賴于該關(guān)系模式的任何候選碼,或是每個(gè)決定因素都包含碼。第一范式到BCNF的4種范式之間有以下關(guān)系:BCNF高于第三范式高于第二范式高于第一范式。綜上所述,規(guī)范化目的是使結(jié)構(gòu)更合理,消除存儲(chǔ)異常,使數(shù)據(jù)冗余盡量小,便于插入、刪除和更新。在對(duì)關(guān)系模式進(jìn)行規(guī)范化時(shí),必須遵從概念單一化原則,即一個(gè)關(guān)系模式描述一個(gè)實(shí)體或?qū)嶓w間的一種聯(lián)系。規(guī)范化的操作方法是將關(guān)系模式分解成兩個(gè)或多個(gè)關(guān)系模式,分解后的關(guān)系模式集合必須保證不會(huì)丟失原有關(guān)系的信息。實(shí)際操作時(shí),并不一定要求全部模式都達(dá)到BCNF,有時(shí)故意保留部分冗余便于數(shù)據(jù)查詢。(3)優(yōu)化關(guān)系模式,定義數(shù)據(jù)完整性、安全性,評(píng)估性能。
編輯推薦
《SQL Server 2008數(shù)據(jù)庫技術(shù)實(shí)用教程》是高職高專工作過程?立體化創(chuàng)新規(guī)劃教材和計(jì)算機(jī)系列之一?!鲆耘囵B(yǎng)技能型創(chuàng)新人才為目標(biāo),設(shè)置豐富的版塊合理安排全文,突出實(shí)用性和可操作性。■以工作過程為導(dǎo)向,全面展示案例實(shí)施的全過程,提煉技術(shù)要點(diǎn),即學(xué)即用面向就業(yè)?!鲆詮?qiáng)化實(shí)際操作技能為主線,答疑解惑,解決工作實(shí)踐中的常見問題。
圖書封面
評(píng)論、評(píng)分、閱讀與下載
SQL Server 2008數(shù)據(jù)庫技術(shù)實(shí)用教程 PDF格式下載