本書集關(guān)系數(shù)據(jù)庫設(shè)計(jì)、技術(shù)和實(shí)踐于一體,設(shè)計(jì)的目標(biāo)是幫助學(xué)生掌握關(guān)系數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)和行為設(shè)計(jì)的方法;技術(shù)的目標(biāo)是幫助學(xué)生掌握關(guān)系數(shù)據(jù)庫SQL語言;實(shí)踐的目標(biāo)是幫助學(xué)生通過實(shí)驗(yàn)和課程設(shè)計(jì)能進(jìn)行數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā)。全書共分三篇10章,第一篇內(nèi)容包括關(guān)系數(shù)據(jù)庫基礎(chǔ)、數(shù)據(jù)庫建模、關(guān)系數(shù)據(jù)庫模式設(shè)計(jì)和關(guān)系數(shù)據(jù)庫設(shè)計(jì),第二篇內(nèi)容包括SQL Server 2012綜述、SQL Server的T-SQL I和SQL Server的T-SQL II,第三篇內(nèi)容包括數(shù)據(jù)庫技術(shù)基礎(chǔ)實(shí)驗(yàn)、數(shù)據(jù)庫技術(shù)綜合實(shí)驗(yàn)、數(shù)據(jù)庫技術(shù)課程設(shè)計(jì)。
數(shù)據(jù)庫技術(shù)是計(jì)算機(jī)科學(xué)技術(shù)中發(fā)展最快的領(lǐng)域之一,也是應(yīng)用最廣的技術(shù)之一,它已成為計(jì)算機(jī)信息系統(tǒng)與應(yīng)用系統(tǒng)的核心技術(shù)和重要基礎(chǔ)。寧波工程學(xué)院明確應(yīng)用型定位與“爭試點(diǎn)創(chuàng)示范”目標(biāo),2015年成為浙江省應(yīng)用型建設(shè)試點(diǎn)示范高校,2016年入選國家產(chǎn)教融合發(fā)展工程建設(shè)高校,其中計(jì)算機(jī)應(yīng)用技術(shù)專業(yè)于1998年成為教育部計(jì)算機(jī)示范性專業(yè),計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)于2010年被教育部列入“卓越工程師教育培養(yǎng)計(jì)劃”首批試點(diǎn)專業(yè),2018年順利通過本科專業(yè)審核評估和國際工程教育專業(yè)認(rèn)證,2020年3月入選教育部“雙萬計(jì)劃”中的省級一流專業(yè)。本書第一作者曾是該專業(yè)的負(fù)責(zé)人,本著“應(yīng)用型本科教材的編寫應(yīng)注重與工程應(yīng)用相結(jié)合,注重與能力培養(yǎng)相聯(lián)系,注重與目標(biāo)達(dá)成相一致”的指導(dǎo)思想,與課程團(tuán)隊(duì)一起對10多年來數(shù)據(jù)庫課程教學(xué)與科研工作的實(shí)踐進(jìn)行總結(jié)并編撰成書。
從2004年起,我們就建立了數(shù)據(jù)庫課程體系:程序設(shè)計(jì)類(面向?qū)ο蟪绦蛟O(shè)計(jì)、Java程序設(shè)計(jì)/C#程序設(shè)計(jì))→數(shù)據(jù)庫設(shè)計(jì)類(數(shù)據(jù)庫理論與技術(shù)、數(shù)據(jù)庫技術(shù)課程設(shè)計(jì))→數(shù)據(jù)庫應(yīng)用開發(fā)實(shí)踐類(Web應(yīng)用設(shè)計(jì)與開發(fā)基礎(chǔ)、Java Web/.NET Web應(yīng)用開發(fā)、Android/iOS平臺應(yīng)用與開發(fā))→畢業(yè)設(shè)計(jì)提高類(網(wǎng)絡(luò)數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā))。該課程體系與IT職業(yè)崗位需求直接相關(guān),是培養(yǎng)卓越軟件工程師的核心內(nèi)容,在教學(xué)計(jì)劃中處于關(guān)鍵地位,為學(xué)生完成應(yīng)用開發(fā)實(shí)踐和畢業(yè)設(shè)計(jì)提供了技術(shù)支持。另外,“數(shù)據(jù)庫課程體系的改革研究與實(shí)踐”項(xiàng)目被評為浙江省高等學(xué)校教學(xué)成果獎(jiǎng)二等獎(jiǎng)(浙教高教〔2009〕153號),“數(shù)據(jù)庫課程體系教學(xué)團(tuán)隊(duì)”被評為浙江省高等學(xué)校省級教學(xué)團(tuán)隊(duì)(浙教高教〔2009〕212號),《數(shù)據(jù)庫理論與技術(shù)》教材被評為浙江省重點(diǎn)建設(shè)教材(浙教高教〔2011〕10號)。
本書的特色如下:
(1)內(nèi)容集關(guān)系數(shù)據(jù)庫設(shè)計(jì)、技術(shù)和實(shí)踐于一體。設(shè)計(jì)的目標(biāo)是幫助學(xué)生掌握關(guān)系數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)和行為設(shè)計(jì)的方法;技術(shù)的目標(biāo)是幫助學(xué)生掌握關(guān)系數(shù)據(jù)庫SQL語言;實(shí)踐的目標(biāo)是幫助學(xué)生通過實(shí)驗(yàn)?zāi)苓M(jìn)行數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā)。第1~4章屬于關(guān)系數(shù)據(jù)庫基礎(chǔ)理論,第5~10章屬于關(guān)系數(shù)據(jù)庫技術(shù)、實(shí)踐。
(2)注重實(shí)用性、簡明性和易讀性,所有難點(diǎn)、重要知識點(diǎn)均通過例子、圖示等進(jìn)行解釋和總結(jié)。第1~7章中,每章均有3個(gè)典型案例介紹,用來幫助學(xué)生加深對重要知識點(diǎn)的理解;第8~10章中的實(shí)驗(yàn)內(nèi)容均為平時(shí)教學(xué)過程的積累。
(3)附錄A中提供的“數(shù)據(jù)庫理論與技術(shù)”課程教學(xué)大綱是按照國際工程教育專業(yè)認(rèn)證的要求編寫的,有助于向讀者展示工程教育的OBE理念;附錄B中提供的“數(shù)據(jù)庫理論與技術(shù)”課程模擬試題及參考答案,有助于任課教師根據(jù)教學(xué)大綱的要求給學(xué)生出題,也有助于學(xué)生根據(jù)教學(xué)大綱的要求進(jìn)行復(fù)習(xí)。
(4)配套資源情況:本書配有電子課件、程序源代碼等教輔資源,讀者可登錄華信教育資源網(wǎng)(www.hxedu.com.cn)下載,或者向作者(jbfan@163.com)索取。另外,“數(shù)據(jù)庫理論與技術(shù)”課程的慕課平臺網(wǎng)址為https://mooc1.chaoxing.com/course/206435382.html,有興趣的讀者可以通過慕課平臺進(jìn)行學(xué)習(xí)。
本書分三篇共10章。第1篇設(shè)計(jì)篇,內(nèi)容包括關(guān)系數(shù)據(jù)庫基礎(chǔ)、關(guān)系數(shù)據(jù)庫建模、關(guān)系數(shù)據(jù)庫模式設(shè)計(jì)和關(guān)系數(shù)據(jù)庫設(shè)計(jì);第2篇技術(shù)篇,內(nèi)容包括SQL Server 2012綜述、SQL Server的T-SQL I和SQL Server的T-SQL II;第3篇實(shí)踐篇,內(nèi)容包括SQL Server基礎(chǔ)實(shí)驗(yàn)、SQL Server綜合實(shí)驗(yàn)和數(shù)據(jù)庫設(shè)計(jì)實(shí)驗(yàn)。本書建議總學(xué)時(shí)為48~64學(xué)時(shí),其中上機(jī)實(shí)驗(yàn)16學(xué)時(shí),部分章節(jié)內(nèi)容可根據(jù)需要選講。
本書可作為應(yīng)用型高等學(xué)校計(jì)算機(jī)類及相關(guān)專業(yè)本科生或?qū)?粕慕滩,也可供IT行業(yè)的科技人員和工程技術(shù)人員參考。
本書主要由寧波工程學(xué)院范劍波教授編寫,李俊博士校對了各章節(jié)的內(nèi)容,安鵬教授對本書在教學(xué)改革方面提出了很好的建議,劉良旭教授、李慶風(fēng)教授和樓建明教授在教學(xué)、教材編寫與出版過程中給予了積極的幫助,在此一并表示衷心的感謝。
限于作者水平,書中難免存在錯(cuò)誤和不妥之處,殷切期望廣大讀者給予指正。
第1篇 設(shè)計(jì)篇
第1章 關(guān)系數(shù)據(jù)庫基礎(chǔ)
1.1 數(shù)據(jù)庫系統(tǒng)的應(yīng)用和研究
1.1.1 數(shù)據(jù)庫系統(tǒng)的應(yīng)用
1.1.2 數(shù)據(jù)庫系統(tǒng)的研究
1.2 文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)
1.2.1 數(shù)據(jù)、信息和數(shù)據(jù)處理
1.2.2 文件系統(tǒng)的特點(diǎn)與局限性
1.2.3 數(shù)據(jù)庫系統(tǒng)的發(fā)展及其特點(diǎn)
1.3 數(shù)據(jù)描述和數(shù)據(jù)模型
1.3.1 數(shù)據(jù)描述的領(lǐng)域
1.3.2 實(shí)體聯(lián)系的種類
1.3.3 數(shù)據(jù)模型的層次
1.3.4 數(shù)據(jù)模型的實(shí)例
1.4 關(guān)系模型的基本概念
1.4.1 關(guān)系的通俗解釋
1.4.2 關(guān)系的數(shù)學(xué)定義
1.4.3 關(guān)系模型的組成和特點(diǎn)
1.5 關(guān)系代數(shù)
1.5.1 傳統(tǒng)的集合運(yùn)算
1.5.2 專門的關(guān)系運(yùn)算
1.5.3 關(guān)系代數(shù)表達(dá)式的實(shí)例
1.6 典型案例分析
1.6.1 典型案例1――高校組織結(jié)構(gòu)E-R圖的設(shè)計(jì)(1)
1.6.2 典型案例2――不同部門學(xué)生數(shù)據(jù)的結(jié)構(gòu)化
1.6.3 典型案例3――關(guān)系代數(shù)表達(dá)式的查詢
小結(jié)
習(xí)題
第2章 關(guān)系數(shù)據(jù)庫建模
2.1 關(guān)系數(shù)據(jù)庫建模概述
2.2 E-R圖的設(shè)計(jì)
2.2.1 E-R圖的設(shè)計(jì)方法
2.2.2 E-R圖的設(shè)計(jì)原則
2.3 E-R圖的子類和繼承
2.3.1 E-R圖的子類
2.3.2 E-R圖的繼承
2.4 E-R圖的約束建模
2.4.1 實(shí)體集的鍵碼
2.4.2 單值約束
2.4.3 完整性約束
2.4.4 其他類型約束
2.5 典型案例分析
2.5.1 典型案例4――高校組織結(jié)構(gòu)E-R圖的設(shè)計(jì)(2)
2.5.2 典型案例5――在線考試系統(tǒng) E-R圖的設(shè)計(jì)
2.5.3 典型案例6――圖書網(wǎng)上銷售系統(tǒng)E-R圖的設(shè)計(jì)
小結(jié)
習(xí)題
第3章 關(guān)系數(shù)據(jù)庫模式設(shè)計(jì)
3.1 關(guān)系規(guī)范化問題的提出
3.2 函數(shù)依賴的概念
3.2.1 函數(shù)依賴定義
3.2.2 完全函數(shù)依賴和部分函數(shù)依賴
3.2.3 傳遞函數(shù)依賴
3.2.4 函數(shù)依賴規(guī)則
3.3 關(guān)系模式的鍵碼
3.3.1 鍵碼的定義
3.3.2 閉包的計(jì)算
3.4 關(guān)系的規(guī)范化
3.4.1 第一范式(1NF)
3.4.2 第二范式(2NF)
3.4.3 第三范式(3NF)
3.4.4 BC范式(BCNF)
3.5 模式分解的優(yōu)劣
3.5.1 模式分解的等價(jià)性
3.5.2 模式分解的規(guī)則和方法
3.6 典型案例分析
3.6.1 典型案例7――產(chǎn)品訂貨系統(tǒng)關(guān)系數(shù)據(jù)庫模式的設(shè)計(jì)
3.6.2 典型案例8――在線考試系統(tǒng)關(guān)系數(shù)據(jù)庫模式的設(shè)計(jì)
3.6.3 典型案例9――圖書網(wǎng)上銷售系統(tǒng)關(guān)系數(shù)據(jù)庫模式的設(shè)計(jì)
小結(jié)
習(xí)題
第4章 關(guān)系數(shù)據(jù)庫設(shè)計(jì)
4.1 關(guān)系數(shù)據(jù)庫設(shè)計(jì)概述
4.1.1 關(guān)系數(shù)據(jù)庫設(shè)計(jì)的方法
4.1.2 關(guān)系數(shù)據(jù)庫設(shè)計(jì)的特點(diǎn)
4.1.3 關(guān)系數(shù)據(jù)庫設(shè)計(jì)的步驟
4.2 需求分析
4.2.1 需求分析的任務(wù)
4.2.2 需求分析的結(jié)構(gòu)化分析方法
4.3 概念結(jié)構(gòu)設(shè)計(jì)
4.3.1 概念結(jié)構(gòu)設(shè)計(jì)的任務(wù)
4.3.2 概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟
4.4 邏輯結(jié)構(gòu)設(shè)計(jì)
4.4.1 邏輯結(jié)構(gòu)設(shè)計(jì)的任務(wù)
4.4.2 邏輯結(jié)構(gòu)設(shè)計(jì)的方法與步驟
4.5 數(shù)據(jù)庫物理設(shè)計(jì)、應(yīng)用系統(tǒng)實(shí)施與調(diào)優(yōu)
4.6 典型案例分析
4.6.1 典型案例10――某倉儲超市POS系統(tǒng)關(guān)系數(shù)據(jù)庫的設(shè)計(jì)
4.6.2 典型案例11――某賓館管理系統(tǒng)關(guān)系數(shù)據(jù)庫的設(shè)計(jì)
4.6.3 典型案例12――某公司活動(dòng)信息采集系統(tǒng)關(guān)系數(shù)據(jù)庫的設(shè)計(jì)
小結(jié)
習(xí)題
第2篇 技術(shù)篇
第5章 SQL SERVER 2012綜述
5.1 SQL SERVER 2012概述
5.2 SQL SERVER 2012安裝
5.2.1 SQL Server 2012安裝環(huán)境
5.2.2 SQL Server 2012安裝過程
5.3 SQL SERVER 2012管理工具
5.3.1 SQL Server 2012服務(wù)器的配置
5.3.2 SQL Server 2012服務(wù)器的注冊和連接
5.3.3 SQL Server 2012服務(wù)器的啟動(dòng)和關(guān)閉
5.3.4 SQL Server 2012的常用工具
5.4 典型案例分析
5.4.1 典型案例13――SQL Server聯(lián)機(jī)叢書的查詢
5.4.2 典型案例14――數(shù)據(jù)庫系統(tǒng)管理員sa密碼的設(shè)定
5.4.3 典型案例15――SQL Server數(shù)據(jù)庫的附加和分離
小結(jié)
習(xí)題
第6章 SQL SERVER的T-SQL I
6.1 SQL SERVER的數(shù)據(jù)庫
6.1.1 數(shù)據(jù)庫及其組成
6.1.2 創(chuàng)建用戶數(shù)據(jù)庫
6.1.3 管理用戶數(shù)據(jù)庫
6.2 SQL SERVER的數(shù)據(jù)表
6.2.1 數(shù)據(jù)表結(jié)構(gòu)和內(nèi)容
6.2.2 創(chuàng)建用戶數(shù)據(jù)表
6.2.3 管理用戶數(shù)據(jù)表
6.3 SQL SERVER的數(shù)據(jù)更新
6.3.1 數(shù)據(jù)插入
6.3.2 數(shù)據(jù)修改
6.3.3 數(shù)據(jù)刪除
6.4 SQL SERVER的數(shù)據(jù)查詢
6.4.1 數(shù)據(jù)基本查詢
6.4.2 數(shù)據(jù)分組查詢
6.4.3 多表連接查詢
6.4.4 數(shù)據(jù)子查詢
6.4.5 附加子句
6.5 SQL SERVER的視圖和函數(shù)
6.5.1 視圖的建立
6.5.2 視圖的查詢和刪除
6.5.3 系統(tǒng)函數(shù)的分類
6.5.4 用戶定義函數(shù)
6.6 典型案例分析
6.6.1 典型案例16――SQL Server基本表查詢的應(yīng)用
6.6.2 典型案例17――SQL Server視圖查詢的應(yīng)用
6.6.3 典型案例18――SQL Server函數(shù)的應(yīng)用
小結(jié)
習(xí)題
第7章 SQL SERVER的T-SQL II
7.1 SQL SERVER的流程控制語言
7.1.1 批處理、腳本和變量
7.1.2 順序、分支和循環(huán)結(jié)構(gòu)語句
7.1.3 程序返回、屏幕顯示等 語句
7.1.4 游標(biāo)概念及使用
7.2 SQL SERVER的存儲過程和觸發(fā)器
7.2.1 存儲過程的建立、執(zhí)行和刪除
7.2.2 觸發(fā)器的建立和刪除
7.3 SQL SERVER的數(shù)據(jù)庫保護(hù)
7.3.1 SQL Server系統(tǒng)的安全性
7.3.2 SQL Server系統(tǒng)的完整性
7.3.3 SQL Server系統(tǒng)的備份和恢復(fù)
7.3.4 SQL Server系統(tǒng)的并發(fā)控制簡介
7.4 典型案例分析
7.4.1 典型案例19――SQL Server游標(biāo)的應(yīng)用
7.4.2 典型案例20――SQL Server存儲過程的應(yīng)用
7.4.3 典型案例21――SQL Server系統(tǒng)完整性的應(yīng)用
小結(jié)
習(xí)題
第3篇 實(shí)踐篇
第8章 SQL SERVER基礎(chǔ)實(shí)驗(yàn)
8.1 實(shí)驗(yàn)1:SQL SERVER和樣本數(shù)據(jù)庫安裝
8.1.1 實(shí)驗(yàn)?zāi)康暮鸵?br />8.1.2 實(shí)驗(yàn)內(nèi)容與過程記錄
8.2 實(shí)驗(yàn)2:SQL SERVER數(shù)據(jù)定義和更新
8.2.1 實(shí)驗(yàn)?zāi)康暮鸵?br />8.2.2 實(shí)驗(yàn)內(nèi)容與過程記錄
8.3 實(shí)驗(yàn)3:SQL SERVER數(shù)據(jù)查詢
8.3.1 實(shí)驗(yàn)?zāi)康暮鸵?br />8.3.2 實(shí)驗(yàn)內(nèi)容與過程記錄
8.4 實(shí)驗(yàn)4:SQL SERVER視圖和函數(shù)
8.4.1 實(shí)驗(yàn)?zāi)康暮鸵?br />8.4.2 實(shí)驗(yàn)內(nèi)容與過程記錄
小結(jié)
習(xí)題
第9章 SQL SERVER綜合實(shí)驗(yàn)
9.1 實(shí)驗(yàn)5:SQL SERVER綜合練習(xí)
9.1.1 實(shí)驗(yàn)?zāi)康暮鸵?br />9.1.2 實(shí)驗(yàn)內(nèi)容與過程記錄
9.2 實(shí)驗(yàn)6:SQL SERVER存儲過程和觸發(fā)器
9.2.1 實(shí)驗(yàn)?zāi)康暮鸵?br />9.2.2 實(shí)驗(yàn)內(nèi)容與過程記錄
小結(jié)
習(xí)題
第10章 數(shù)據(jù)庫設(shè)計(jì)實(shí)驗(yàn)
10.1 實(shí)驗(yàn)7:SQL SERVER系統(tǒng)安全性和完整性
10.1.1 實(shí)驗(yàn)?zāi)康暮鸵?br />10.1.2 實(shí)驗(yàn)內(nèi)容與過程記錄
10.2 實(shí)驗(yàn)8:數(shù)據(jù)庫設(shè)計(jì)綜合練習(xí)
10.2.1 實(shí)驗(yàn)?zāi)康暮鸵?br />10.2.2 實(shí)驗(yàn)內(nèi)容與過程記錄
小結(jié)
習(xí)題
附錄A “數(shù)據(jù)庫理論與技術(shù)”課程教學(xué)大綱
附錄B “數(shù)據(jù)庫理論與技術(shù)”課程模擬試題及參考答案
參考文獻(xiàn)