本書系統(tǒng)地講述數(shù)據(jù)庫(kù)原理與SQL Server 2016的功能、應(yīng)用及實(shí)踐知識(shí)。 全書共分13章,主要內(nèi)容包括關(guān)系數(shù)據(jù)庫(kù)知識(shí)、SQL Server 2016的安裝與配置、數(shù)據(jù)庫(kù)的創(chuàng)建與維護(hù)、數(shù)據(jù)庫(kù)表的操作與管理、數(shù)據(jù)庫(kù)表的維護(hù)、完整性控制、查詢與管理表數(shù)據(jù)、Transact-SQL編程、存儲(chǔ)過(guò)程和觸發(fā)器、數(shù)據(jù)庫(kù)安全管理、數(shù)據(jù)庫(kù)系統(tǒng)開發(fā)配置連接,并且詳細(xì)介紹了C#和SQL Server 2016系統(tǒng)開發(fā)及實(shí)訓(xùn)等知識(shí)。 本書內(nèi)容翔實(shí)、知識(shí)結(jié)構(gòu)合理、語(yǔ)言流暢簡(jiǎn)潔、案例豐富,適合希望學(xué)習(xí)SQL Server 2016操作的初學(xué)者閱讀,也適合作為高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)、軟件工程、信息技術(shù)等相關(guān)專業(yè)的數(shù)據(jù)庫(kù)課程教材。
數(shù)據(jù)庫(kù)技術(shù)是計(jì)算機(jī)科學(xué)技術(shù)領(lǐng)域發(fā)展*快的,同時(shí)也是應(yīng)用*為廣泛的技術(shù)。數(shù)據(jù)庫(kù)管理系統(tǒng)是信息技術(shù)基礎(chǔ)設(shè)施的重要組成部分,也是國(guó)家信息技術(shù)的核心部分。數(shù)據(jù)庫(kù)與網(wǎng)絡(luò)技術(shù)融合是現(xiàn)代信息技術(shù)的基石。SQL Server 2016是一個(gè)可信任、高效、智能的數(shù)據(jù)庫(kù)平臺(tái),能滿足目前和將來(lái)的數(shù)據(jù)庫(kù)管理與使用需求。通過(guò)本教材的學(xué)習(xí),讀者能夠掌握數(shù)據(jù)庫(kù)設(shè)計(jì)的基本理論,具有數(shù)據(jù)庫(kù)設(shè)計(jì)能力,同時(shí)經(jīng)過(guò)書中的習(xí)題與實(shí)訓(xùn)的練習(xí),能使得學(xué)生在完成本書學(xué)習(xí)的同時(shí),具有一定的數(shù)據(jù)庫(kù)開發(fā)能力。
數(shù)據(jù)庫(kù)技術(shù)是計(jì)算機(jī)科學(xué)技術(shù)發(fā)展的基礎(chǔ),也是應(yīng)用最廣的技術(shù)之一。數(shù)據(jù)庫(kù)管理系統(tǒng)是國(guó)家信息基礎(chǔ)設(shè)施的重要組成部分,是社會(huì)進(jìn)步的助推器,也是提高生產(chǎn)力、提高生產(chǎn)效率、改變民生、推動(dòng)國(guó)家經(jīng)濟(jì)發(fā)展的重要技術(shù)工具。
Microsoft SQL Server 是一個(gè)典型的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),從SQL Server 7.0發(fā)展到現(xiàn)在的SQL Server 2016,功能越來(lái)越強(qiáng)大。SQL Server 2016為不同用戶提供數(shù)據(jù)庫(kù)解決方案,增強(qiáng)用戶的生產(chǎn)實(shí)踐能力、提高產(chǎn)品的市場(chǎng)競(jìng)爭(zhēng)力,同時(shí)還解放了生產(chǎn)力。
本書有以下特色:
? 數(shù)據(jù)庫(kù)原理與應(yīng)用的充分融合。
? 內(nèi)容上理論和實(shí)踐結(jié)構(gòu)安排合理,先理論后實(shí)踐。
? 案例豐富經(jīng)典。
? 系統(tǒng)開發(fā)軟件升級(jí)到最新版本。
? 給出了較系統(tǒng)的系統(tǒng)開發(fā)典型案例。
? 結(jié)合學(xué)生實(shí)際學(xué)習(xí)情況給出大量實(shí)訓(xùn)練習(xí)。
本書內(nèi)容
第1章 數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí),概述數(shù)據(jù)的發(fā)展和系統(tǒng)結(jié)構(gòu),以及數(shù)據(jù)庫(kù)的組成要素、數(shù)據(jù)庫(kù)模型、數(shù)據(jù)庫(kù)的層次結(jié)構(gòu)和數(shù)據(jù)庫(kù)的系統(tǒng)組成等概要知識(shí)。
第2章 關(guān)系數(shù)據(jù)庫(kù),介紹關(guān)系數(shù)據(jù)庫(kù)的基本理論知識(shí),包括關(guān)系數(shù)據(jù)模型、結(jié)構(gòu)、操作、完整性、關(guān)系代數(shù)與范式等知識(shí)。
第3章 關(guān)系數(shù)據(jù)庫(kù)標(biāo)準(zhǔn)語(yǔ)言SQL,介紹SQL語(yǔ)言的特點(diǎn)、基本概念、定義和查詢處理等操作。
第4章 數(shù)據(jù)庫(kù)設(shè)計(jì)與編程,主要圍繞數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)與開發(fā)的方法、步驟及編程介紹。
第5章 認(rèn)識(shí)SQL Server 2016,簡(jiǎn)要介紹SQL Server 2016的發(fā)展、功能特點(diǎn)、安裝與配置、體系結(jié)構(gòu)、Transact-SQL、實(shí)用工具架構(gòu)等。
第6章 SQL Server 2016創(chuàng)建和管理數(shù)據(jù)庫(kù),主要介紹數(shù)據(jù)庫(kù)的創(chuàng)建、管理、維護(hù)等知識(shí)。
第7章 創(chuàng)建與管理SQL Server 2016數(shù)據(jù)庫(kù)表,主要介紹數(shù)據(jù)庫(kù)數(shù)據(jù)的類型、表的概念以及表的創(chuàng)建、操作、約束、視圖、索引等的定義與實(shí)用。
第8章 操縱數(shù)據(jù)表的數(shù)據(jù),涉及表的增、刪、改的查詢語(yǔ)言應(yīng)用。
第9章 查詢復(fù)雜數(shù)據(jù),圍繞數(shù)據(jù)庫(kù)數(shù)據(jù)的復(fù)雜查詢介紹。
第10章 存儲(chǔ)過(guò)程與觸發(fā)器,介紹自定義存儲(chǔ)過(guò)程和觸發(fā)器的創(chuàng)建、調(diào)用、修改和刪除等操作。
第11章 數(shù)據(jù)庫(kù)安全,介紹SQL Server 2016提供的安全管理方法,包括身份驗(yàn)證、賬戶、數(shù)據(jù)庫(kù)用戶管理、角色和權(quán)限等。
第12章 圖書管理系統(tǒng),介紹通過(guò)C#語(yǔ)言和SQL Server 2016開發(fā)一個(gè)圖書管理系統(tǒng)。
第13章 實(shí)訓(xùn),針對(duì)前面的知識(shí)給出經(jīng)典實(shí)踐案例。
除鄧立國(guó)、佟強(qiáng)、楊姝、蔣寧外,參與本書編寫的人員還有李文、周傳生、齊振國(guó)、宋占峰、王劍輝、王興輝、蔡云鵬、于澗、逄華、楊雪華、鄭云霄、莊天寶、孫雪冬、張?chǎng)、王寧、姚朋軍、王凱麗、趙穎、王馨、王德偉、李賽男、于闖、李宇峰、宋芷萱、何明訓(xùn)、富豪等。
編者
2017年7月
鄧立國(guó),東北大學(xué)計(jì)算機(jī)應(yīng)用博士畢業(yè)。2005年開始在沈陽(yáng)師范大學(xué)軟件學(xué)院、教育技術(shù)學(xué)院任教,主要研究方向:數(shù)據(jù)挖掘、知識(shí)工程、大數(shù)據(jù)處理、云計(jì)算、分布式計(jì)算等。以第1作者發(fā)表學(xué)術(shù)論文30多篇(26篇EI),主編教材 1 部,主持科研課題6項(xiàng),經(jīng)費(fèi)10余萬(wàn)元,多次獲得校級(jí)科研優(yōu)秀獎(jiǎng),作為九三社員提出的智慧城市提案被市政府采納,研究成果被教育廳等單位采用。
第 1 章
? 數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí) ?
數(shù)據(jù)庫(kù)是數(shù)據(jù)管理的最新技術(shù),也是計(jì)算機(jī)科學(xué)的重要分支。本章主要介紹數(shù)據(jù)庫(kù)的基礎(chǔ)知識(shí)、數(shù)據(jù)庫(kù)系統(tǒng)的組成等內(nèi)容。
1.1 數(shù)據(jù)庫(kù)系統(tǒng)概論
1.1.1 數(shù)據(jù)庫(kù)系統(tǒng)的基本概念
數(shù)據(jù)庫(kù)系統(tǒng)主要涉及數(shù)據(jù)、數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)管理系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng)4個(gè)基本概念。
數(shù)據(jù)(Data)指能輸入計(jì)算機(jī)并能被計(jì)算機(jī)程序處理的所有符號(hào),是數(shù)據(jù)庫(kù)中存儲(chǔ)的基本對(duì)象。數(shù)據(jù)的種類很多,如數(shù)字、文本、圖形、圖像、音頻、視頻、學(xué)生的檔案記錄、貨物的運(yùn)輸情況等都屬于數(shù)據(jù)。必須賦予一定的含義才能使數(shù)據(jù)具有意義,這種含義稱為數(shù)據(jù)的語(yǔ)義,數(shù)據(jù)與語(yǔ)義不可分。例如,63是一個(gè)數(shù)據(jù),它可以代表一個(gè)學(xué)生的某科成績(jī)、某個(gè)人的年齡、某系的學(xué)生人數(shù)等,只有把63賦予語(yǔ)義后,才能表示確定的意義。
數(shù)據(jù)庫(kù)(DataBase,DB)是指在計(jì)算機(jī)存儲(chǔ)設(shè)備上建立起來(lái)的用于存儲(chǔ)數(shù)據(jù)的倉(cāng)庫(kù),其中存放的數(shù)據(jù)是可以長(zhǎng)期保留、有組織、可共享的數(shù)據(jù)集合。也就是按照一定的數(shù)學(xué)模型組織、描述和存儲(chǔ)數(shù)據(jù),使得數(shù)據(jù)庫(kù)中的數(shù)據(jù)具有盡可能小的冗余度、較高的數(shù)據(jù)獨(dú)立性和易擴(kuò)展性的特點(diǎn),并可在一定范圍內(nèi)共享給多個(gè)用戶。
數(shù)據(jù)庫(kù)管理系統(tǒng)(DataBase Management System,DBMS)是位于用戶和操作系統(tǒng)之間的數(shù)據(jù)管理軟件。用它實(shí)現(xiàn)數(shù)據(jù)定義、組織、存儲(chǔ)、管理、操縱以及數(shù)據(jù)庫(kù)建立、維護(hù)、事務(wù)管理、運(yùn)行管理等功能。
數(shù)據(jù)庫(kù)系統(tǒng)(DataBase System,DBS)是指帶有數(shù)據(jù)庫(kù)并利用數(shù)據(jù)庫(kù)技術(shù)對(duì)計(jì)算機(jī)中的數(shù)據(jù)進(jìn)行管理的計(jì)算機(jī)系統(tǒng)。它可以實(shí)現(xiàn)有組織地、動(dòng)態(tài)地存儲(chǔ)大量相關(guān)數(shù)據(jù),并提供數(shù)據(jù)處理和信息資源等共享服務(wù)。數(shù)據(jù)庫(kù)系統(tǒng)一般由滿足數(shù)據(jù)庫(kù)系統(tǒng)要求的計(jì)算機(jī)硬件和包括數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)管理系統(tǒng)、數(shù)據(jù)庫(kù)應(yīng)用開發(fā)系統(tǒng)在內(nèi)的計(jì)算機(jī)軟件以及數(shù)據(jù)庫(kù)系統(tǒng)中的人員組成,如圖1-1所示。
在不引起混淆的情況下,數(shù)據(jù)庫(kù)系統(tǒng)也簡(jiǎn)稱數(shù)據(jù)庫(kù)。
圖1-1 數(shù)據(jù)庫(kù)系統(tǒng)
1.1.2 數(shù)據(jù)庫(kù)技術(shù)的產(chǎn)生與特點(diǎn)
在數(shù)據(jù)庫(kù)技術(shù)產(chǎn)生之前,對(duì)數(shù)據(jù)的管理經(jīng)歷了人工管理和文件系統(tǒng)兩個(gè)階段。
20世紀(jì)50年代中期以前屬于人工管理數(shù)據(jù)的階段。當(dāng)時(shí),計(jì)算機(jī)主要用于科學(xué)計(jì)算,數(shù)據(jù)采用批處理的方式,計(jì)算機(jī)硬件中沒(méi)有磁盤外部存儲(chǔ)設(shè)備,軟件沒(méi)有操作系統(tǒng),因此只能采用人工的方式對(duì)數(shù)據(jù)進(jìn)行管理。人工管理數(shù)據(jù)的特點(diǎn):數(shù)據(jù)不保存、應(yīng)用程序管理數(shù)據(jù)、數(shù)據(jù)不能共享、數(shù)據(jù)不具有獨(dú)立性。人工管理階段應(yīng)用程序與數(shù)據(jù)之間的對(duì)應(yīng)關(guān)系如圖1-2所示。
圖1-2 人工管理階段應(yīng)用程序與數(shù)據(jù)之間的對(duì)應(yīng)關(guān)系
20世紀(jì)50年代后期到60年代中期屬于文件系統(tǒng)階段。此時(shí),計(jì)算機(jī)硬件中已經(jīng)配置了磁盤、磁鼓等外部存儲(chǔ)設(shè)備,軟件操作系統(tǒng)中已經(jīng)具備專門進(jìn)行數(shù)據(jù)管理功能的系統(tǒng),即文件系統(tǒng)。文件系統(tǒng)的特點(diǎn)為:數(shù)據(jù)可以長(zhǎng)期保留、有文件系統(tǒng)管理數(shù)據(jù)、數(shù)據(jù)的共享性和獨(dú)立性差、冗余度大。文件系統(tǒng)應(yīng)用程序與數(shù)據(jù)之間的對(duì)應(yīng)關(guān)系如圖1-3所示。
……