黨的二十大報告指出: 教育、科技、人才是全面建設(shè)社會主義現(xiàn)代化國家的基礎(chǔ)性、戰(zhàn)略性支撐。必須堅持科技是第一生產(chǎn)力、人才是第一資源、創(chuàng)新是第一動力,深入實施科教興國戰(zhàn)略、人才強國戰(zhàn)略、創(chuàng)新驅(qū)動發(fā)展戰(zhàn)略,開辟發(fā)展新領(lǐng)域新賽道,不斷塑造發(fā)展新動能新優(yōu)勢。高等教育與經(jīng)濟社會發(fā)展緊密相連,對促進(jìn)就業(yè)創(chuàng)業(yè)、助力經(jīng)濟社會發(fā)展、增進(jìn)人民福祉具有重要意義。
數(shù)據(jù)庫最初是作為大公司或大機構(gòu)進(jìn)行大規(guī)模事務(wù)處理的基礎(chǔ)。后來隨著個人計算機的普及和互聯(lián)網(wǎng)的興起,數(shù)據(jù)庫的應(yīng)用范圍呈指數(shù)級增長,遍及各行各業(yè),如鐵路、證券、銀行、醫(yī)院、學(xué)校,以及國家政府部門、國防軍工領(lǐng)域、科技發(fā)展領(lǐng)域等。
隨著信息時代的發(fā)展,數(shù)據(jù)庫也相應(yīng)產(chǎn)生了一些新的應(yīng)用領(lǐng)域,主要包括處理聲音、圖像和視頻等數(shù)據(jù)的多媒體數(shù)據(jù)庫,在移動計算機系統(tǒng)(如筆記本電腦、掌上電腦等)上發(fā)展起來的移動數(shù)據(jù)庫,用于地理信息系統(tǒng)和計算機輔助設(shè)計的空間數(shù)據(jù)庫,以及隨著人工智能的發(fā)展,逐漸被廣泛應(yīng)用的專家決策系統(tǒng)等。
SQL Server 2022是一個功能完備的數(shù)據(jù)庫管理系統(tǒng),提供了完整的關(guān)系數(shù)據(jù)庫創(chuàng)建、開發(fā)和管理功能。它功能強大、操作簡便,日益被廣大數(shù)據(jù)庫用戶所喜愛,而且越來越多的開發(fā)工具提供了與SQL Server的接口。
本書系統(tǒng)地介紹了數(shù)據(jù)庫技術(shù)的基本理論,全面介紹了SQL Server 2022的各項功能,數(shù)據(jù)庫系統(tǒng)設(shè)計、維護及管理以及數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)相關(guān)的技術(shù)。全書分三部分共15章: 第一部分是
基礎(chǔ)篇(第1~4章),系統(tǒng)講述數(shù)據(jù)庫的基本理論知識,
包括數(shù)據(jù)庫系統(tǒng)的發(fā)展過程和基本概念,數(shù)據(jù)模型,關(guān)系數(shù)據(jù)庫的基本概念、關(guān)系完整性、關(guān)系代數(shù)和關(guān)系規(guī)范化基礎(chǔ),數(shù)據(jù)庫設(shè)計全過程及設(shè)計實例; 第二部分是
應(yīng)用篇(第5~14章),全面講述數(shù)據(jù)庫管理系統(tǒng)SQL Server 2022的應(yīng)用,
包括SQL Server 2022軟件介紹、安裝與配置及TSQL基礎(chǔ),數(shù)據(jù)庫的概念和各種操作,表的基本操作,數(shù)據(jù)庫的各種查詢操作及實例,TSQL編程的基本知識和函數(shù)、游標(biāo)的介紹,視圖和索引的概念、作用及操作,存儲過程和觸發(fā)器的概念、作用及操作,事務(wù)與并發(fā)控制,數(shù)據(jù)庫系統(tǒng)的用戶驗證和權(quán)限管理以及數(shù)據(jù)加密,數(shù)據(jù)庫的備份、
還原與分離、附加; 第三部分是
開發(fā)篇(
第15章),運用一個教學(xué)管理系統(tǒng)實例介紹了基于C#.NET的SQL Server數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā)過程。
本書作者長期從事高校計算機類專業(yè)的教學(xué)工作,不僅具有豐富的教學(xué)經(jīng)驗,
而且具有多年的數(shù)據(jù)庫開發(fā)經(jīng)驗。依據(jù)長期的教學(xué)經(jīng)驗,深知數(shù)據(jù)庫的主要知識點和重點、難點,什么樣的教材適合教學(xué)使用,學(xué)生及各類讀者對數(shù)據(jù)庫的學(xué)習(xí)方式和興趣所在,以及如何組織書本的內(nèi)容更利于教學(xué)和自學(xué),從而形成本書的結(jié)構(gòu)體系。
本書內(nèi)容翔實,體系完整,圖文并茂,具有較強的系統(tǒng)性和實用性; 章節(jié)安排合理,理論與實踐緊密結(jié)合,每章后面都配有習(xí)題,有助于讀者理解概念、鞏固知識、掌握重點、攻克難點。另外,書后的附錄包含每章的實驗,供讀者進(jìn)行操作實踐。
為便于教學(xué),本書提供豐富的配套資源,包括教學(xué)大綱、教學(xué)課件、電子教案、程序源碼、在線作業(yè)、習(xí)題答案和1300分鐘的微課視頻。
資源下載提示
課件等資源: 掃描封底的圖書資源二維碼,在公眾號書圈下載。
素材(源碼)等資源: 掃描目錄上方的二維碼下載。
在線自測題: 掃描封底的作業(yè)系統(tǒng)二維碼,再掃描自測題二維碼,可以在線做題及查看答案。
微課視頻: 掃描封底的文泉云盤防盜碼,再掃描書中相應(yīng)章節(jié)的視頻講解二維碼,可以在線學(xué)習(xí)。
本書可作為高等院校計算機相關(guān)專業(yè)
SQL Server數(shù)據(jù)庫課程的
教學(xué)用書,也
可作為培養(yǎng)數(shù)據(jù)庫系統(tǒng)工程師的培訓(xùn)教材,還可作為
數(shù)據(jù)庫管理人員及數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)人員的參考用書。
本書第1~4章和第14章由尹志宇編寫,第5~10章由李涵玥編寫,第11章由解春燕編寫,第12章由李青茹編寫,第13章由于富強編寫,第15章由解春燕和李涵玥編寫。附錄實驗由尹志宇編寫。
由于作者水平有限,書中難免有疏漏與不足之處,衷心希望廣大讀者批評指正。
作者2025年1月
基礎(chǔ)篇
第1章數(shù)據(jù)庫系統(tǒng)概述
1.1數(shù)據(jù)庫技術(shù)發(fā)展史
1.1.1數(shù)據(jù)處理技術(shù)
1.1.2數(shù)據(jù)庫技術(shù)的三個發(fā)展階段
1.2數(shù)據(jù)庫系統(tǒng)的組成
1.3數(shù)據(jù)庫的體系結(jié)構(gòu)
1.3.1數(shù)據(jù)庫的三級模式結(jié)構(gòu)
1.3.2數(shù)據(jù)庫的兩級映像
習(xí)題1
第2章數(shù)據(jù)模型
2.1信息的三種世界
2.2概念模型
2.2.1基本概念
2.2.2ER模型
2.3數(shù)據(jù)模型
2.3.1層次模型
2.3.2網(wǎng)狀模型
2.3.3關(guān)系模型
習(xí)題2
第3章關(guān)系數(shù)據(jù)庫系統(tǒng)
3.1關(guān)系數(shù)據(jù)結(jié)構(gòu)
3.1.1關(guān)系的定義和性質(zhì)
3.1.2關(guān)系數(shù)據(jù)庫
3.2關(guān)系的完整性
3.3關(guān)系運算
3.3.1傳統(tǒng)的集合運算
3.3.2專門的關(guān)系運算
3.4關(guān)系的規(guī)范化
3.4.1函數(shù)依賴
3.4.2關(guān)系規(guī)范化的目的
3.4.3關(guān)系規(guī)范化的過程
習(xí)題3
第4章數(shù)據(jù)庫設(shè)計
4.1數(shù)據(jù)庫設(shè)計概述
4.2需求分析
4.2.1需求分析的任務(wù)
4.2.2需求分析的方法
4.2.3數(shù)據(jù)流圖和數(shù)據(jù)字典
4.3概念結(jié)構(gòu)設(shè)計
4.3.1概念結(jié)構(gòu)設(shè)計的方法
4.3.2概念結(jié)構(gòu)設(shè)計的步驟
4.4邏輯結(jié)構(gòu)設(shè)計
4.4.1將ER圖轉(zhuǎn)換為關(guān)系數(shù)據(jù)模型
4.4.2關(guān)系模式的優(yōu)化
4.4.3設(shè)計用戶外模式
4.5物理結(jié)構(gòu)設(shè)計
4.5.1確定數(shù)據(jù)庫的物理結(jié)構(gòu)
4.5.2評價物理結(jié)構(gòu)
4.6數(shù)據(jù)庫實施、運行和維護
4.6.1數(shù)據(jù)庫實施
4.6.2數(shù)據(jù)庫的運行與維護
4.7數(shù)據(jù)庫設(shè)計實例
4.7.1銀行卡管理系統(tǒng)數(shù)據(jù)庫設(shè)計
4.7.2圖書借閱管理系統(tǒng)數(shù)據(jù)庫設(shè)計
4.7.3鋼材倉庫管理系統(tǒng)設(shè)計
習(xí)題4
應(yīng)用篇
第5章SQL Server 2022基礎(chǔ)
5.1SQL Server 2022概述
5.1.1SQL Server發(fā)展史
5.1.2SQL Server 2022新增功能
5.1.3SQL Server 2022的協(xié)議
5.2SQL Server 2022的安裝與配置
5.2.1SQL Server 2022的版本
5.2.2SQL Server 2022的環(huán)境需求
5.2.3SQL Server 2022的安裝過程
5.2.4SQL Server Management Studio的安裝過程
5.3SQL Server 2022的管理工具
5.3.1SQL Server Management Studio
5.3.2SQL Server配置管理器
5.3.3SQL Server Profiler跟蹤工具
5.4TSQL基礎(chǔ)
5.4.1TSQL的特點
5.4.2TSQL的分類
5.4.3TSQL的基本語法
習(xí)題5
第6章數(shù)據(jù)庫的概念和操作
6.1數(shù)據(jù)庫的基本概念
6.1.1物理數(shù)據(jù)庫
6.1.2邏輯數(shù)據(jù)庫
6.2數(shù)據(jù)庫操作
6.2.1創(chuàng)建數(shù)據(jù)庫
6.2.2修改數(shù)據(jù)庫
6.2.3刪除數(shù)據(jù)庫
習(xí)題6
第7章表的操作
7.1創(chuàng)建表
7.1.1數(shù)據(jù)類型
7.1.2界面方式創(chuàng)建表
7.1.3使用TSQL語句創(chuàng)建表
7.2修改表
7.2.1界面方式修改表
7.2.2使用TSQL語句修改表
7.3列約束和表約束
7.3.1PRIMARY KEY約束
7.3.2UNIQUE約束
7.3.3FOREIGN KEY約束
7.3.4CHECK約束
7.3.5DEFAULT約束
7.4表數(shù)據(jù)操作
7.4.1向表中添加數(shù)據(jù)
7.4.2修改表中數(shù)據(jù)
7.4.3刪除表中數(shù)據(jù)
7.5刪除表
7.6數(shù)據(jù)的導(dǎo)入/導(dǎo)出
7.6.1導(dǎo)出數(shù)據(jù)
7.6.2導(dǎo)入數(shù)據(jù)
習(xí)題7
第8章數(shù)據(jù)庫查詢
8.1SELECT查詢語法
8.2簡單查詢
8.2.1投影查詢
8.2.2選擇查詢
8.2.3聚合函數(shù)查詢
8.3分組查詢
8.3.1簡單分組
8.3.2CUBE和ROLLUP的應(yīng)用
8.4連接查詢
8.4.1內(nèi)連接
8.4.2自連接
8.4.3外連接
8.4.4交叉連接
8.5子查詢
8.5.1無關(guān)子查詢
8.5.2相關(guān)子查詢
8.6其他查詢
8.6.1集合運算查詢
8.6.2對查詢結(jié)果排序
8.6.3存儲查詢結(jié)果
8.7在數(shù)據(jù)操作中使用SELECT子句
8.7.1在INSERT語句中使用SELECT子句
8.7.2在UPDATE語句中使用SELECT子句
8.7.3在DELETE語句中使用SELECT子句
習(xí)題8
第9章TSQL編程
9.1TSQL編程基礎(chǔ)
9.1.1標(biāo)識符
9.1.2變量
9.1.3運算符
9.1.4批處理
9.1.5注釋
9.2流程控制語句
9.2.1SET語句
9.2.2BEGIN…END語句
9.2.3IF…ELSE語句
9.2.4CASE語句
9.2.5WHILE語句
9.2.6GOTO語句
9.2.7RETURN語句
9.3函數(shù)
9.3.1系統(tǒng)內(nèi)置函數(shù)
9.3.2用戶定義函數(shù)
9.4游標(biāo)
9.4.1游標(biāo)概述
9.4.2游標(biāo)的類型
9.4.3游標(biāo)的操作
習(xí)題9
第10章視圖和索引
10.1視圖
10.1.1視圖概述
10.1.2創(chuàng)建視圖
10.1.3修改視圖
10.1.4使用視圖
10.1.5刪除視圖
10.2索引
10.2.1索引概述
10.2.2索引的類型
10.2.3創(chuàng)建索引
10.2.4查看索引信息
10.2.5刪除索引
習(xí)題10
第11章存儲過程和觸發(fā)器
11.1存儲過程
11.1.1存儲過程概述
11.1.2存儲過程的類型
11.1.3創(chuàng)建存儲過程
11.1.4執(zhí)行存儲過程
11.1.5查看存儲過程
11.1.6修改和刪除存儲過程
11.2觸發(fā)器
11.2.1觸發(fā)器概述
11.2.2觸發(fā)器的分類
11.2.3創(chuàng)建觸發(fā)器
11.2.4查看觸發(fā)器信息及修改觸發(fā)器
11.2.5禁止、啟用和刪除觸發(fā)器
習(xí)題11
第12章事務(wù)與并發(fā)控制
12.1事務(wù)概述
12.2事務(wù)的類型
12.2.1根據(jù)系統(tǒng)的設(shè)置分類
12.2.2根據(jù)運行模式分類
12.3事務(wù)處理語句
12.4事務(wù)的并發(fā)控制
12.4.1并發(fā)帶來的問題
12.4.2鎖的基本概念
12.4.3鎖的類型
12.4.4鎖的信息
12.4.5死鎖的產(chǎn)生及解決辦法
12.4.6手工加鎖
習(xí)題12
第13章數(shù)據(jù)庫系統(tǒng)的安全性
13.1身份驗證
13.1.1SQL Server的身份驗證模式
13.1.2設(shè)置身份驗證模式
13.2賬號管理
13.2.1服務(wù)器登錄賬號
13.2.2數(shù)據(jù)庫用戶賬號
13.3角色管理
13.3.1固定服務(wù)器角色
13.3.2數(shù)據(jù)庫角色
13.3.3應(yīng)用程序角色
13.4權(quán)限管理
13.4.1權(quán)限的類別
13.4.2權(quán)限操作
13.5數(shù)據(jù)加密
13.5.1數(shù)據(jù)加密簡介
13.5.2數(shù)據(jù)加密和解密操作
習(xí)題13
第14章數(shù)據(jù)庫的備份與還原
14.1數(shù)據(jù)庫備份概述
14.1.1數(shù)據(jù)庫備份計劃
14.1.2數(shù)據(jù)庫備份的類型
14.2數(shù)據(jù)庫還原概述
14.2.1數(shù)據(jù)庫還原策略
14.2.2數(shù)據(jù)庫恢復(fù)模式
14.3數(shù)據(jù)庫備份操作
14.4數(shù)據(jù)庫還原操作
14.4.1自動還原
14.4.2手動還原
14.5數(shù)據(jù)庫分離與附加
14.5.1分離數(shù)據(jù)庫
14.5.2附加數(shù)據(jù)庫
習(xí)題14
開發(fā)篇
第15章基于C#.NET的數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)
15.1C#語言簡介
15.2使用ADO.NET訪問SQL Server數(shù)據(jù)庫
15.2.1ADO.NET的對象模型
15.2.2使用ADO.NET訪問數(shù)據(jù)庫的基本操作
15.3LINQ to SQL數(shù)據(jù)庫技術(shù)
15.3.1使用LINQ技術(shù)查詢數(shù)據(jù)
15.3.2使用LINQ技術(shù)插入數(shù)據(jù)
15.3.3使用LINQ技術(shù)刪除數(shù)據(jù)
15.3.4使用LINQ技術(shù)更新數(shù)據(jù)
15.4基于ADO技術(shù)的數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)實例
15.4.1數(shù)據(jù)庫設(shè)計
15.4.2應(yīng)用系統(tǒng)設(shè)計與實現(xiàn)
習(xí)題15
附錄A實驗
參考文獻(xiàn)