SQL Server 2022數(shù)據(jù)庫技術(shù)項(xiàng)目教程 教案全套 胡伏湘 項(xiàng)目1-8 數(shù)據(jù)庫技術(shù)導(dǎo)論- 數(shù)據(jù)庫應(yīng)用程序開發(fā)項(xiàng)目實(shí)戰(zhàn)_第1頁
SQL Server 2022數(shù)據(jù)庫技術(shù)項(xiàng)目教程 教案全套 胡伏湘 項(xiàng)目1-8 數(shù)據(jù)庫技術(shù)導(dǎo)論- 數(shù)據(jù)庫應(yīng)用程序開發(fā)項(xiàng)目實(shí)戰(zhàn)_第2頁
SQL Server 2022數(shù)據(jù)庫技術(shù)項(xiàng)目教程 教案全套 胡伏湘 項(xiàng)目1-8 數(shù)據(jù)庫技術(shù)導(dǎo)論- 數(shù)據(jù)庫應(yīng)用程序開發(fā)項(xiàng)目實(shí)戰(zhàn)_第3頁
SQL Server 2022數(shù)據(jù)庫技術(shù)項(xiàng)目教程 教案全套 胡伏湘 項(xiàng)目1-8 數(shù)據(jù)庫技術(shù)導(dǎo)論- 數(shù)據(jù)庫應(yīng)用程序開發(fā)項(xiàng)目實(shí)戰(zhàn)_第4頁
SQL Server 2022數(shù)據(jù)庫技術(shù)項(xiàng)目教程 教案全套 胡伏湘 項(xiàng)目1-8 數(shù)據(jù)庫技術(shù)導(dǎo)論- 數(shù)據(jù)庫應(yīng)用程序開發(fā)項(xiàng)目實(shí)戰(zhàn)_第5頁
已閱讀5頁,還剩140頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

PAGE2《SQLServer2022數(shù)據(jù)庫技術(shù)項(xiàng)目教程》教案課程名稱:數(shù)據(jù)庫應(yīng)用技術(shù)授課年級(jí):202X年級(jí)授課學(xué)期:202X學(xué)年第X學(xué)期教師姓名:XX老師年月日課題名稱項(xiàng)目1數(shù)據(jù)庫技術(shù)導(dǎo)論之任務(wù)1:了解數(shù)據(jù)庫技術(shù)計(jì)劃課時(shí)2課時(shí)內(nèi)容分析掌握數(shù)據(jù)庫的管理與設(shè)計(jì)方法,是程序員的基本技能,要掌握數(shù)據(jù)庫技術(shù),則必須了解數(shù)據(jù)庫的基礎(chǔ)知識(shí)。本次課將學(xué)習(xí)數(shù)據(jù)庫的基本概念,數(shù)據(jù)庫職業(yè)崗位技能需求,圖書館借閱管理系統(tǒng)數(shù)據(jù)庫的基本結(jié)構(gòu)。教學(xué)目標(biāo)及基本要求通過教學(xué),讓學(xué)生掌握:數(shù)據(jù)庫的基本類型及主要的國產(chǎn)數(shù)據(jù)庫。關(guān)系數(shù)據(jù)庫的基本概念。軟件企業(yè)數(shù)據(jù)庫管理員崗位的職責(zé)與基本要求。圖書館圖書資料借閱管理系統(tǒng)數(shù)據(jù)庫的基本結(jié)構(gòu)。教學(xué)重點(diǎn)關(guān)系數(shù)據(jù)庫的基本概念。圖書館管理系統(tǒng)的組成。教學(xué)難點(diǎn)圖書館管理系統(tǒng)需求分析。圖書館管理系統(tǒng)數(shù)據(jù)庫的組成。教學(xué)方式講授為主,講練結(jié)合教學(xué)過程教案1:了解數(shù)據(jù)庫技術(shù)一、課程引入(1)展示淘寶網(wǎng)站和學(xué)校教務(wù)管理系統(tǒng)的運(yùn)行界面,提示學(xué)生思考后臺(tái)數(shù)據(jù)的保存與處理方法,引出本門課程的內(nèi)容。帶領(lǐng)學(xué)生打開這些應(yīng)用系統(tǒng)的工作界面,通過購物、查看課表、查看成績等操作,展現(xiàn)運(yùn)行過程,引出后臺(tái)數(shù)據(jù)管理的概念。(2)提出學(xué)習(xí)目標(biāo)1.數(shù)據(jù)庫的基本概念。2.數(shù)據(jù)庫職業(yè)崗位技能需求。3.圖書館借閱管理系統(tǒng)數(shù)據(jù)庫的基本結(jié)構(gòu)。二、新內(nèi)容學(xué)習(xí)(1)數(shù)據(jù)庫的主要類型數(shù)據(jù)庫主要包括關(guān)系型數(shù)據(jù)庫和非關(guān)系型數(shù)據(jù)庫兩種類型,介紹各種數(shù)據(jù)庫的特點(diǎn)及主要產(chǎn)品,關(guān)系型數(shù)據(jù)庫的相關(guān)概念,主要國產(chǎn)數(shù)據(jù)庫,介紹信創(chuàng)產(chǎn)業(yè)。(參考教材1.1.1)(2)數(shù)據(jù)庫職業(yè)崗位技能需求分析教師在智聯(lián)招聘、前程無憂、BOSS直聘、中華英才網(wǎng)、58同城等專業(yè)的人才招聘網(wǎng)站上,搜索數(shù)據(jù)庫管理員、軟件開發(fā)工程師、數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)、網(wǎng)站開發(fā)等崗位,查看崗位職責(zé)和主要任務(wù)。(參考教材1.1.2)。安排學(xué)生實(shí)踐,搜索智聯(lián)招聘、前程無憂、BOSS直聘,了解軟件企業(yè)對(duì)DBA的要求,搜索DBA的崗位要求和考證方法。(3)案例數(shù)據(jù)庫及表設(shè)計(jì)老師可參考教材內(nèi)容,打開學(xué)校圖書館圖書資料借閱管理系統(tǒng),介紹圖書館圖書資料借閱管理系統(tǒng)用戶端界面,引導(dǎo)學(xué)生分析總結(jié)該系統(tǒng)的功能,分析主要數(shù)據(jù)表及各個(gè)欄目的意義(參考教材1.1.3)。(4)數(shù)據(jù)庫中的表介紹圖書館管理系統(tǒng)libsys的3個(gè)表,分析bookInfo表(圖書信息表)、readerInfo表(讀者信息表)、borrowInfo表(借閱信息表)的功能與相互聯(lián)系。教師首先介紹bookInfo表的組成,然后參考教材1.1.3小節(jié)中的字段列表對(duì)表中各字段進(jìn)行介紹,請(qǐng)學(xué)生分析readerInfo表,最后選取進(jìn)行borrowInfo表講解說明。(5)表的記錄介紹圖書館管理系統(tǒng)libsys的3個(gè)表,對(duì)照bookInfo表(圖書信息表)、readerInfo表(讀者信息表)、borrowInfo表(借閱信息表)的結(jié)構(gòu),分析記錄與表結(jié)構(gòu)的對(duì)應(yīng)聯(lián)系。教師首先介紹bookInfo表的記錄,然后參考教材1.1.3小節(jié)中的字段列表對(duì)表中各條記錄進(jìn)行介紹,請(qǐng)學(xué)生分析readerInfo表的記錄,最后選取進(jìn)行borrowInfo記錄講解說明。三、歸納總結(jié),隨堂練習(xí),布置作業(yè)(1)分析學(xué)生成績管理系統(tǒng)scoresys的表組成,各表的結(jié)構(gòu)及記錄。(2)按照教材技能訓(xùn)練1:了解數(shù)據(jù)庫工作崗位的要求,安排學(xué)生上機(jī)操作,了解數(shù)據(jù)庫課程對(duì)應(yīng)的崗位及技能要求;了解常見的數(shù)據(jù)庫有哪些;了解SQLServer數(shù)據(jù)庫;了解常用的國產(chǎn)數(shù)據(jù)庫的特點(diǎn)。(3)打開達(dá)夢公司網(wǎng)站,了解達(dá)夢數(shù)據(jù)庫的特點(diǎn)及應(yīng)用范圍,了解信創(chuàng)產(chǎn)業(yè)。思考題和習(xí)題(1)在你用過的軟件中,如微信,哪些包含了數(shù)據(jù)庫?是怎么看出來的?(2)你用過騰訊導(dǎo)航APP或高德導(dǎo)航APP嗎?地理位置是什么類型的數(shù)據(jù)庫?教學(xué)后記

課題名稱項(xiàng)目1數(shù)據(jù)庫技術(shù)導(dǎo)論之任務(wù)2:配置SQLServer2022運(yùn)行環(huán)境計(jì)劃課時(shí)2課時(shí)內(nèi)容分析前一次課學(xué)習(xí)了數(shù)據(jù)庫的分類、關(guān)系數(shù)據(jù)庫的基本特征,了解了數(shù)據(jù)庫的基本組成。本次課將學(xué)習(xí)SQLServer2022數(shù)據(jù)庫開發(fā)環(huán)境的搭建,包括軟件下載、安裝與配套。教學(xué)目標(biāo)及基本要求通過教學(xué),讓學(xué)生掌握:SQLServer2022數(shù)據(jù)庫的版本及選擇方法。SQLServer2022數(shù)據(jù)庫的下載方法。SQLServer2022數(shù)據(jù)庫的安裝過程。SQLServer2022數(shù)據(jù)庫的運(yùn)行界面。教學(xué)重點(diǎn)SQLServer2022數(shù)據(jù)庫的安裝。SQLServer2022數(shù)據(jù)庫運(yùn)行環(huán)境的搭建。教學(xué)難點(diǎn)SQLServer2022數(shù)據(jù)庫的安裝。SQLServer2022數(shù)據(jù)庫的運(yùn)行。教學(xué)方式講練結(jié)合,邊講邊練教學(xué)過程教案2:配置SQLServer2022運(yùn)行環(huán)境一、課程引入(1)回顧上一次的內(nèi)容:數(shù)據(jù)庫的組成,數(shù)據(jù)表和記錄。打開圖書館管理系統(tǒng)libsys的3張表,回顧并分析各個(gè)表的功能與字段組成,記錄的組成及字段的對(duì)應(yīng)關(guān)系,引出數(shù)據(jù)存儲(chǔ)與數(shù)據(jù)處理的概念。(2)提出學(xué)習(xí)目標(biāo)1.SQLServer2022數(shù)據(jù)庫的功能特點(diǎn)。2.SQLServer2022數(shù)據(jù)庫的下載。3.SQLServer2022數(shù)據(jù)庫的安裝。4.SQLServer2022數(shù)據(jù)庫的運(yùn)行界面。二、新內(nèi)容學(xué)習(xí)(1)SQLServer2022數(shù)據(jù)庫的版本SQLServer2022數(shù)據(jù)庫有5個(gè)版本,重點(diǎn)介紹Enterprise版和Developer版。(參考教材1.2.1)(2)下載SQLServer2022Enterprise版軟件包包括2個(gè)文件:內(nèi)核在線安裝包和可視化工具SSMS安裝包。內(nèi)核在線安裝包用于安裝SQLServer2022內(nèi)核,可視化工具SSMS安裝包用于安裝SSMS,提供數(shù)據(jù)庫操作的可視化界面。(參考教材1.2.1)。安排學(xué)生實(shí)踐,打開網(wǎng)站,找到文件所在位置,查看文件名,嘗試下載。(3)SQLServer2022的安裝老師先介紹安裝本軟件所需要的硬件和軟件要求,檢查本機(jī)配置,確認(rèn)是否滿足安裝要求(參考教材1.2.2)。先安裝內(nèi)核包,再安裝可視化工具包,注意軟件的安裝位置和目錄結(jié)構(gòu)。內(nèi)核包在安裝時(shí),有多個(gè)對(duì)話框需要選擇參數(shù),需要停頓下來跟學(xué)生解釋清楚,也可以全部采用默認(rèn)值。(4)SQLServer的工作界面啟動(dòng)SSMS,用Windows身份驗(yàn)證方式登錄數(shù)據(jù)庫服務(wù)器,查看其工作界面。分別介紹SSMS工作界面各個(gè)部分的功能及關(guān)閉和重新打開的方法(參考教材1.2.3)。(5)SQLServer2022環(huán)境的使用打開SSMS工作界面,介紹菜單欄、工作欄及各個(gè)子窗口的使用方法,重點(diǎn)學(xué)習(xí)對(duì)象資源管理器子窗口的組成和常用工具按鈕的用法(參考教材1.2.4)。編寫一小段代碼,比如用于顯示系統(tǒng)參數(shù)或者系統(tǒng)時(shí)間,讓學(xué)生操作,熟悉基本功能。三、歸納總結(jié),隨堂練習(xí),布置作業(yè)(1)SQLServer2022的版本及開發(fā)版的下載與安裝。(2)安排學(xué)生從網(wǎng)站上下載SQLServer2022開發(fā)版,并安裝在自己機(jī)器上。(3)了解SSMS的界面組成,運(yùn)用查詢窗口編寫小程序。思考題和習(xí)題(1)SQLServer2022的內(nèi)核與SSMS有什么關(guān)系?(2)如果沒有SSMS,SQLServer2022能否運(yùn)行?(3)完成本項(xiàng)目習(xí)題之選擇題和問答題。教學(xué)后記

課題名稱項(xiàng)目1數(shù)據(jù)庫技術(shù)導(dǎo)論之任務(wù)3:結(jié)構(gòu)化查詢語言T-SQL的使用計(jì)劃課時(shí)4課時(shí)內(nèi)容分析在本項(xiàng)目的任務(wù)2中,學(xué)習(xí)了SQLServer2022數(shù)據(jù)庫軟件的版本、安裝方法與環(huán)境設(shè)置,SSMS管理器窗口的組成與應(yīng)用。本次課將學(xué)習(xí)SQLServer2022數(shù)據(jù)庫工作窗口編寫應(yīng)用程序,包括T-SQL語言分類、基本語法和程序基本結(jié)構(gòu)。教學(xué)目標(biāo)及基本要求通過教學(xué),讓學(xué)生掌握:了解T-SQL語言的類型及主要語句。掌握T-SQL語言的基本語法格式。掌握程序的三種基本結(jié)構(gòu)及關(guān)鍵語句。能夠在SQLServer2022查詢窗口中編寫簡單的程序。教學(xué)重點(diǎn)程序的基本結(jié)構(gòu),變量定義與應(yīng)用。SQLServer2022數(shù)據(jù)庫編程。教學(xué)難點(diǎn)程序的基本結(jié)構(gòu)及應(yīng)用。SQLServer2022數(shù)據(jù)庫編程。教學(xué)方式講練結(jié)合,邊講邊練,案例教學(xué)教學(xué)過程教案3:結(jié)構(gòu)化查詢語言T-SQL的使用一、課程引入(1)回顧上一次的內(nèi)容。SQLServer2022數(shù)據(jù)庫軟件的下載、安裝、開發(fā)環(huán)境搭建、工作界面的組成。回顧Java或者Python程序設(shè)計(jì)課程,了解程序的基本結(jié)構(gòu)及關(guān)鍵命令。(2)提出學(xué)習(xí)目標(biāo)1.T-SQL語言特點(diǎn)及分類,了解主要語句。2.數(shù)據(jù)類型及其應(yīng)用。3.變量及其應(yīng)用。4.程序的三種結(jié)構(gòu)。5.T-SQL編程方法與應(yīng)用。二、新內(nèi)容學(xué)習(xí)(1)T-SQL語言介紹T-SQL是在SQLServer數(shù)據(jù)庫中的SQL3標(biāo)準(zhǔn)的實(shí)現(xiàn),是微軟公司對(duì)SQL語言的擴(kuò)展,具有SQL語言的特點(diǎn),并增加了變量、運(yùn)算符、函數(shù)、流程控制和注釋等元素,功能更強(qiáng)大。(參考教材1.3.1)(2)T-SQL語言的分類DDL、DML、DCL和附加語句四大類,重點(diǎn)介紹前3類,讓學(xué)生初步解數(shù)據(jù)管理的基本框架。(參考教材1.3.1)。(3)T-SQL數(shù)據(jù)類型老師先從數(shù)據(jù)表中找?guī)讉€(gè)比較典型的字段,讓學(xué)生回答應(yīng)該是什么類型,怎么判斷數(shù)據(jù)類型(參考教材1.3.2)。介紹字符型、整數(shù)型、實(shí)數(shù)型、日期時(shí)間型、貨幣型、文本型、二進(jìn)制等數(shù)據(jù)類型,通過大量的實(shí)例讓學(xué)生能夠正確選擇字段的數(shù)據(jù)類型。(4)運(yùn)算符對(duì)比Java或者Python語言,對(duì)比數(shù)學(xué)運(yùn)算符,講解各種運(yùn)算符及表達(dá)式的功能與用法,特別要注意關(guān)系運(yùn)算符的表示方式。每介紹一個(gè)運(yùn)算符,都需要講解一個(gè)實(shí)例,并讓學(xué)生操作實(shí)現(xiàn)(參考教材1.3.2)。(5)系統(tǒng)函數(shù)講解各主要系統(tǒng)的功能與用法,全部講完后集中練習(xí)。(參考教材1.3.2)。(6)流程控制語句(參考教材1.3.3)注釋語句與語句塊的用法。程序的三種結(jié)構(gòu)。條件判斷語句的語法格式與用法,簡單if語句與嵌套if語句的用法。Case分情況條件語句的用法。循環(huán)語句的用法(7)三種程序結(jié)構(gòu)與流程控制語句的運(yùn)用。對(duì)比Java或者Python語言,運(yùn)用三種程序結(jié)構(gòu)與流程控制語句,編寫各種實(shí)用經(jīng)典小程序。(8)技能訓(xùn)練:使用T-SQL語言編寫簡單程序。(參考教材1.3.4)三、歸納總結(jié),隨堂練習(xí),布置作業(yè)(1)T-SQL語言分類。(2)T-SQL語法基礎(chǔ)。(3)程序結(jié)構(gòu)與流程控制語句,編程練習(xí)。(4)運(yùn)用T-SQL語言編程方法,編程練習(xí)。思考題和習(xí)題(1)完成本項(xiàng)目習(xí)題之填空題。(2)運(yùn)用流程控制語句編寫程序,求兩個(gè)整數(shù)的最大公約數(shù)和最小公倍數(shù)。(3)運(yùn)用流程控制語句編寫程序,輸出水仙花數(shù)。教學(xué)后記《SQLServer2022數(shù)據(jù)庫技術(shù)項(xiàng)目教程》教案課程名稱:數(shù)據(jù)庫應(yīng)用技術(shù)授課年級(jí):202X年級(jí)授課學(xué)期:202X學(xué)年第X學(xué)期教師姓名:XX老師2024年5月10日課題名稱項(xiàng)目2數(shù)據(jù)庫的創(chuàng)建與管理之任務(wù)1:查看數(shù)據(jù)庫服務(wù)器信息計(jì)劃課時(shí)2課時(shí)內(nèi)容分析通過項(xiàng)目1的學(xué)習(xí),已經(jīng)掌握了數(shù)據(jù)庫的基礎(chǔ)知識(shí),掌握了SQLServer2022數(shù)據(jù)庫的安裝方法與SSMS管理器窗口的組成,能夠用T-SQL語言編寫簡單程序。本次課將學(xué)習(xí)查看SQLServer2022數(shù)據(jù)庫服務(wù)器信息,數(shù)據(jù)庫的創(chuàng)建與管理方法。教學(xué)目標(biāo)及基本要求通過教學(xué),讓學(xué)生掌握:SQLServer2022數(shù)據(jù)庫服務(wù)器的組成。SQLServer2022的主要數(shù)據(jù)庫。SQLServer2022服務(wù)器身份驗(yàn)證模式。教學(xué)重點(diǎn)SQLServer2022的主要數(shù)據(jù)庫。SQLServer2022身份驗(yàn)證。教學(xué)難點(diǎn)SQLServer2022數(shù)據(jù)庫數(shù)據(jù)庫服務(wù)器的身份驗(yàn)證。教學(xué)方式講練結(jié)合,邊講邊練教學(xué)過程教案4:結(jié)構(gòu)化查詢語言T-SQL的使用一、課程引入(1)回顧上一次的內(nèi)容。T-SQL語言的分類,主要語句,數(shù)據(jù)類型,運(yùn)算符,系統(tǒng)函數(shù),程序結(jié)構(gòu),條件語句,循環(huán)語句。在SQLServer數(shù)據(jù)庫查詢窗口中編寫程序及運(yùn)行程序的方法。采用提問的方式,學(xué)生回答。(2)提出學(xué)習(xí)目標(biāo)1.SQLServer2022數(shù)據(jù)庫服務(wù)器的組成。2.SQLServer2022的主要系統(tǒng)數(shù)據(jù)庫的功能與主要數(shù)據(jù)表。3.SQLServer2022服務(wù)器身份驗(yàn)證模式及實(shí)踐。二、新內(nèi)容學(xué)習(xí)(1)SQLServer2022的體系結(jié)構(gòu)體系結(jié)構(gòu)是描述系統(tǒng)各個(gè)組成要素之間相互關(guān)系的模型,重點(diǎn)介紹數(shù)據(jù)庫引擎,一般性介紹集成服務(wù)、分析服務(wù)、報(bào)表服務(wù)、主數(shù)據(jù)服務(wù)、配置管理、數(shù)據(jù)庫引擎優(yōu)化顧問和代理服務(wù)。(參考教材2.1.1)(2)SQLServer2022的數(shù)據(jù)庫組成介紹系統(tǒng)數(shù)據(jù)庫、數(shù)據(jù)庫快照和用戶數(shù)據(jù)庫三種類型,重點(diǎn)講解master、model、msdb、tempdb四個(gè)系統(tǒng)數(shù)據(jù)庫的功能,展示其主要的表,包括結(jié)構(gòu)和記錄。(參考教材2.1.2)。一般性介紹數(shù)據(jù)庫快照??梢詫?dǎo)入一個(gè)用戶數(shù)據(jù)庫,讓學(xué)生理解其組成、所在位置。(3)SQLServer2022服務(wù)器身份驗(yàn)證模式型老師先從展示SQLServer2022服務(wù)器身份驗(yàn)證的兩種模式(參考教材2.1.3)。然后介紹兩種模式的差異。演示W(wǎng)indows身份驗(yàn)證的優(yōu)勢,講解SQLServer身份驗(yàn)證的方法,添加一個(gè)用戶,并用此用戶登錄,觀察兩者的區(qū)別。三、歸納總結(jié),隨堂練習(xí),布置作業(yè)(1)SQLServer2022數(shù)據(jù)庫服務(wù)器的組成及主要功能模塊。(2)SQLServer2022的4個(gè)系統(tǒng)數(shù)據(jù)庫。(3)SQLServer2022服務(wù)器身份驗(yàn)證的兩種模式及差異。(4)學(xué)生操作服務(wù)器身份驗(yàn)證的2種方法。思考題和習(xí)題(1)系統(tǒng)數(shù)據(jù)庫的功能是什么,能進(jìn)行哪些操作?(2)Master數(shù)據(jù)庫保存了哪些信息?(3)如何從本地(遠(yuǎn)程)登錄數(shù)據(jù)庫服務(wù)器?教學(xué)后記

課題名稱項(xiàng)目2數(shù)據(jù)庫的創(chuàng)建與管理之任務(wù)2:創(chuàng)建數(shù)據(jù)庫計(jì)劃課時(shí)2課時(shí)內(nèi)容分析通過任務(wù)1的學(xué)習(xí),已經(jīng)掌握了SQLServer2022數(shù)據(jù)庫服務(wù)器的組成,掌握了SQLServer2022服務(wù)器的主要數(shù)據(jù)庫和身份驗(yàn)證模式。本次課將學(xué)習(xí)在SQLServer2022中創(chuàng)建數(shù)據(jù)庫的2種方法。教學(xué)目標(biāo)及基本要求通過教學(xué),讓學(xué)生能夠:數(shù)據(jù)庫對(duì)應(yīng)的文件與文件組。掌握用戶數(shù)據(jù)庫的主要參數(shù)及設(shè)置方法。掌握運(yùn)用SSMS管理器窗口創(chuàng)建用戶數(shù)據(jù)庫的方法。掌握運(yùn)用SQL命令創(chuàng)建數(shù)據(jù)庫的方法。掌握數(shù)據(jù)庫的管理方法。掌握數(shù)據(jù)庫分離與附加的方法。教學(xué)重點(diǎn)運(yùn)用SQL命令創(chuàng)建用戶數(shù)據(jù)庫。運(yùn)用SQL命令管理數(shù)據(jù)庫。教學(xué)難點(diǎn)用戶數(shù)據(jù)庫的參數(shù)及設(shè)置方法。運(yùn)用SQL命令創(chuàng)建數(shù)據(jù)庫的方法。運(yùn)用SQL命令管理數(shù)據(jù)庫的方法。教學(xué)方式講練結(jié)合,邊講邊練教學(xué)過程教案5:創(chuàng)建數(shù)據(jù)庫一、課程引入(1)回顧上一次的內(nèi)容。SQLServer2022數(shù)據(jù)庫服務(wù)器的組成,SQLServer2022服務(wù)器的主要數(shù)據(jù)庫,數(shù)據(jù)庫服務(wù)器身份驗(yàn)證方法。采用提問的方式,學(xué)生回答。如:數(shù)據(jù)庫引擎的功能,系統(tǒng)數(shù)據(jù)庫有哪些,Master數(shù)據(jù)庫存儲(chǔ)了哪些信息,數(shù)據(jù)庫服務(wù)器的登錄模式有哪些。(2)提出學(xué)習(xí)目標(biāo)1.數(shù)據(jù)庫對(duì)應(yīng)的物理文件與邏輯文件。2.數(shù)據(jù)表的主要參數(shù)。3.運(yùn)用SSMS管理器窗口創(chuàng)建用戶數(shù)據(jù)庫。4.運(yùn)用SQL命令創(chuàng)建用戶數(shù)據(jù)庫。二、新內(nèi)容學(xué)習(xí)(1)文件與文件組數(shù)據(jù)庫對(duì)應(yīng)的物理文件包括主數(shù)據(jù)文件、輔助數(shù)據(jù)文件和事務(wù)日志文件,文件要放在文件組中。(參考教材2.2.1)(2)使用SSMS管理器窗口創(chuàng)建數(shù)據(jù)庫創(chuàng)建數(shù)據(jù)庫就是確定數(shù)據(jù)庫名,并設(shè)置對(duì)應(yīng)的參數(shù),包括所有者、磁盤文件名及存儲(chǔ)位置、初始大小、最大容量、增長速度等。(參考教材2.2.2)。老師演示【例2-1】使用SSMS管理器窗口建立libsys數(shù)據(jù)庫,在操作過程中,要注意各個(gè)參數(shù)的可選項(xiàng)、單位和功能。安排學(xué)生操作,用SSMS管理器窗口設(shè)計(jì)一個(gè)成績管理的數(shù)據(jù)庫scoresys。數(shù)據(jù)庫創(chuàng)建后,老師演示對(duì)應(yīng)的物理文件的位置,大小,狀態(tài),并在SSMS管理器窗口中查找相關(guān)的參數(shù),作為總結(jié),老師可進(jìn)一步演示【例2-3】。(3)使用SQL命令創(chuàng)建數(shù)據(jù)庫打開查詢窗口,老師演示用SQL命令創(chuàng)建【例2-2】和【例2-3】數(shù)據(jù)庫。然后指導(dǎo)學(xué)生在SSMS窗口中刪除成績管理的數(shù)據(jù)庫scoresys,然后用SQL命令重新建立此數(shù)據(jù)庫。(參考教材2.2.3)。(4)技能訓(xùn)練3:創(chuàng)建數(shù)據(jù)庫指導(dǎo)學(xué)生分別用SSMS或者SQL命令創(chuàng)建建立學(xué)校管理數(shù)據(jù)庫CollegeManager和建立人力資源管理數(shù)據(jù)庫HRMIS,檢查其結(jié)果是否正確。(參考教材2.2.4)。三、歸納總結(jié),隨堂練習(xí),布置作業(yè)(1)數(shù)據(jù)庫的組成與主要參數(shù)。(2)創(chuàng)建數(shù)據(jù)庫的兩種方法。(3)分別用2種方法建立2個(gè)數(shù)據(jù)庫,將物理存放在指定位置。思考題和習(xí)題(1)完成本項(xiàng)目習(xí)題。(2)數(shù)據(jù)庫被創(chuàng)建后,對(duì)應(yīng)的物理文件能刪除嗎?通過操作驗(yàn)證。(3)程序員在異地為數(shù)據(jù)庫服務(wù)器創(chuàng)建數(shù)據(jù)庫,應(yīng)該用哪種服務(wù)器登錄模式?用哪種方法創(chuàng)建數(shù)據(jù)庫?為什么?教學(xué)后記課題名稱項(xiàng)目2數(shù)據(jù)庫的創(chuàng)建與管理之任務(wù)3:管理數(shù)據(jù)庫計(jì)劃課時(shí)2課時(shí)內(nèi)容分析通過任務(wù)2的學(xué)習(xí),已經(jīng)掌握了SQLServer2022數(shù)據(jù)庫創(chuàng)建的兩種方法,掌握了數(shù)據(jù)庫的主要參數(shù)以及物理文件的存放位置。本次課將學(xué)習(xí)在SQLServer2022中管理數(shù)據(jù)庫的2種方法。教學(xué)目標(biāo)及基本要求通過教學(xué),讓學(xué)生能夠:數(shù)據(jù)庫參數(shù)的修改方法。數(shù)據(jù)庫名稱的修改方法。數(shù)據(jù)庫的刪除方法。數(shù)據(jù)庫信息的查看方法。掌握數(shù)據(jù)庫分離與附加的方法。教學(xué)重點(diǎn)運(yùn)用SQL命令修改用戶數(shù)據(jù)庫的參數(shù)。運(yùn)用SQL命令管理數(shù)據(jù)庫。教學(xué)難點(diǎn)運(yùn)用SQL命令修改用戶數(shù)據(jù)庫參數(shù)的方法。運(yùn)用SQL命令查看數(shù)據(jù)庫信息的方法。運(yùn)用SQL命令分離和附加數(shù)據(jù)庫的方法。教學(xué)方式講練結(jié)合,邊講邊練教學(xué)過程教案6:管理數(shù)據(jù)庫一、課程引入(1)回顧上一次的內(nèi)容。數(shù)據(jù)庫對(duì)應(yīng)的物理文件與邏輯文件、數(shù)據(jù)表的主要參數(shù)、運(yùn)用SSMS管理器窗口創(chuàng)建用戶數(shù)據(jù)庫、運(yùn)用SQL命令創(chuàng)建用戶數(shù)據(jù)庫。采用提問的方式,學(xué)生回答。如:數(shù)據(jù)庫的主要參數(shù),建立數(shù)據(jù)庫之前的準(zhǔn)備工作,創(chuàng)建數(shù)據(jù)庫時(shí),默認(rèn)參數(shù)如何處理。(2)提出學(xué)習(xí)目標(biāo)1.已有數(shù)據(jù)庫的參數(shù)修改。2.已有數(shù)據(jù)表的刪除方法。3.已有數(shù)據(jù)庫信息的查詢方法。4.運(yùn)用SSMS管理器窗口分離與附加用戶數(shù)據(jù)庫。5.運(yùn)用SQL命令分離與附加用戶數(shù)據(jù)庫。二、新內(nèi)容學(xué)習(xí)(1)修改數(shù)據(jù)庫修改數(shù)據(jù)庫主要指修改其參數(shù),與創(chuàng)建數(shù)據(jù)庫類似,但SQL命令不同。(參考教材2.3.1)老師分別用SSMS管理器窗口和SQL命令修改數(shù)據(jù)庫參數(shù),查看物理文件的變化情況。(2)刪除數(shù)據(jù)庫刪除數(shù)據(jù)庫是從SQLServer中卸載掉此數(shù)據(jù)庫,使其不可再使用,對(duì)應(yīng)的物理文件或以由程序員選擇是否要一起刪除。(參考教材2.3.2)。老師演示刪除已有的libsys數(shù)據(jù)庫,在操作過程中,要注意各個(gè)參數(shù)的選擇,刪除后檢查物理文化的變化情況。安排學(xué)生操作,用SSMS管理器窗口刪除已建立的成績管理的數(shù)據(jù)庫scoresys。(3)使用SQL命令刪除數(shù)據(jù)庫恢復(fù)或重建數(shù)據(jù)庫libsys,用命令刪除此數(shù)據(jù)庫。指導(dǎo)學(xué)生在查詢窗口中用SQL命令重新建立此數(shù)據(jù)庫。(參考教材2.3.2)。(4)查看數(shù)據(jù)庫老師先分別用SSMS管理器窗口和SQL命令查看已有數(shù)據(jù)庫的相關(guān)信息。然后指導(dǎo)學(xué)生分別用SSMS或者SQL命令查看已有的全部數(shù)據(jù)庫信息,再檢查指定數(shù)據(jù)庫的信息。(參考教材2.3.3)。(5)管理數(shù)據(jù)庫。老師介紹數(shù)據(jù)庫管理的基本內(nèi)容,然后分別用SSMS管理器窗口和SQL命令進(jìn)行l(wèi)ibsys數(shù)據(jù)庫進(jìn)行參數(shù)修改、名稱修改、數(shù)據(jù)庫信息查看、分離與附加數(shù)據(jù)庫等相關(guān)操作。(參考教材2.3.1-2.3.4)。指導(dǎo)學(xué)生在SSMS窗口和SQL命令對(duì)成績管理數(shù)據(jù)庫scoresys進(jìn)行參數(shù)修改、名稱修改、數(shù)據(jù)庫信息查看、分離與附加數(shù)據(jù)庫等管理操作。三、歸納總結(jié),隨堂練習(xí),布置作業(yè)(1)數(shù)據(jù)庫參數(shù)的修改。(2)數(shù)據(jù)庫的刪除方法。(3)數(shù)據(jù)庫的查看方法。(4)數(shù)據(jù)庫的分離與附加方法。思考題和習(xí)題(1)完成本項(xiàng)目習(xí)題。(2)數(shù)據(jù)庫被刪除后,對(duì)應(yīng)的物理文件還存在嗎?通過操作驗(yàn)證。(3)附加數(shù)據(jù)庫時(shí),是否可以一并進(jìn)行數(shù)據(jù)庫改名?通過操作驗(yàn)證。教學(xué)后記《SQLServer2022數(shù)據(jù)庫技術(shù)項(xiàng)目教程》教案課程名稱:數(shù)據(jù)庫應(yīng)用技術(shù)授課年級(jí):202X年級(jí)授課學(xué)期:202X學(xué)年第X學(xué)期教師姓名:XX老師2024年5月10日

課題名稱項(xiàng)目3數(shù)據(jù)表的創(chuàng)建與管理之任務(wù)1:數(shù)據(jù)完整性計(jì)劃課時(shí)2課時(shí)內(nèi)容分析通過項(xiàng)目2的學(xué)習(xí),已經(jīng)掌握了SQLServer2022數(shù)據(jù)庫創(chuàng)建和管理的兩種方法,掌握了數(shù)據(jù)庫和數(shù)據(jù)表的關(guān)系,數(shù)據(jù)庫維護(hù)的主要內(nèi)容。本次課將學(xué)習(xí)數(shù)據(jù)完整性的主要類型及管理方法。教學(xué)目標(biāo)及基本要求通過教學(xué),讓學(xué)生能夠掌握:數(shù)據(jù)完整性的內(nèi)涵。數(shù)據(jù)完整性的類型及意義。數(shù)據(jù)完整性約束的實(shí)現(xiàn)。教學(xué)重點(diǎn)各類數(shù)據(jù)完整性的意義。各類數(shù)據(jù)完整性約束的實(shí)現(xiàn)。教學(xué)難點(diǎn)域完整性約束、實(shí)體完整性約束、參照完整性約束的編程實(shí)現(xiàn)。教學(xué)方式講練結(jié)合,邊講邊練教學(xué)過程教案7:數(shù)據(jù)完整性一、課程引入(1)回顧上一次的內(nèi)容。主要包括四個(gè)內(nèi)容:數(shù)據(jù)庫參數(shù)的修改,數(shù)據(jù)庫的刪除方法,數(shù)據(jù)庫的查看方法,數(shù)據(jù)庫的分離與附加方法。采用提問的方式,學(xué)生回答。如:數(shù)據(jù)庫的主要參數(shù),數(shù)據(jù)庫刪除的命令,查看數(shù)據(jù)庫信息的系統(tǒng)存儲(chǔ)過程,數(shù)據(jù)庫分享和附加的命令。(2)提出學(xué)習(xí)目標(biāo)1.數(shù)據(jù)完整性的意義。2.數(shù)據(jù)完整性的類型。3.數(shù)據(jù)完整性約束的內(nèi)涵與意義。4.各類數(shù)據(jù)完整性約束的實(shí)現(xiàn)方法。二、新內(nèi)容學(xué)習(xí)(1)數(shù)據(jù)完整性的意義數(shù)據(jù)完整性用于保證數(shù)據(jù)的完整,控制非法數(shù)據(jù)輸入數(shù)據(jù)庫,避免一錯(cuò)百錯(cuò)。(參考教材3.1.1)老師可以用幾個(gè)表,舉例說明什么是域完整性約束、實(shí)體完整性約束、參照完整性約束,如果沒有這些約束,結(jié)果會(huì)怎么樣。(2)數(shù)據(jù)完整性的類型分別解釋實(shí)體完整性、域完整性、參照完整性、用戶自定義完整性的內(nèi)涵。(參考教材3.1.1)。老師演示如果沒有缺少完整性,輸入記錄時(shí)會(huì)發(fā)生什么不符合常識(shí)的現(xiàn)象。安排學(xué)生操作,用成績管理數(shù)據(jù)庫scoresys中的某個(gè)表為例,查看用到了哪些完整性約束,如果刪除,有什么影響。(3)數(shù)據(jù)完整性約束的實(shí)現(xiàn)介紹添加約束的SQL命令,注意其默認(rèn)約束名(參考教材3.1.2)。實(shí)體完整性約束的類型,分別用SSMS管理器窗口及SQL命令實(shí)現(xiàn)方法。老師先以libsys數(shù)據(jù)庫中的booksys表為例演示,安排學(xué)生成績管理數(shù)據(jù)庫scoresys中的某個(gè)表為例操作。域完整性約束的類型,分別用SSMS管理器窗口及SQL命令實(shí)現(xiàn)方法。老師先以libsys數(shù)據(jù)庫中的booksys表為例演示,安排學(xué)生成績管理數(shù)據(jù)庫scoresys中的某個(gè)表為例操作。參照完整性約束(FOREIGNKEY外鍵約束),分別用SSMS管理器窗口及SQL命令實(shí)現(xiàn)方法。老師先以libsys數(shù)據(jù)庫中的booksys和borrowifo表為例演示,安排學(xué)生成績管理數(shù)據(jù)庫scoresys中的某2個(gè)表為例操作。(4)自定義完整性約束。一般性介紹,老師可以舉一個(gè)例子演示,安排學(xué)生適當(dāng)修改再操作。三、歸納總結(jié),隨堂練習(xí),布置作業(yè)(1)數(shù)據(jù)完整性的類型。(2)利用SSMS管理器窗口實(shí)現(xiàn)數(shù)據(jù)完整性約束。(3)利用SQL命令實(shí)現(xiàn)數(shù)據(jù)完整性約束。思考題和習(xí)題(1)在數(shù)據(jù)庫中,數(shù)據(jù)的完整性由誰來設(shè)計(jì)的?(2)設(shè)置了數(shù)據(jù)完整性,對(duì)用戶操作有什么影響?(3)數(shù)據(jù)的完整性如果涉及到同一個(gè)表的多個(gè)字段,屬于哪種完整性?如果涉及到多張表,應(yīng)采用哪種完整性?教學(xué)后記

課題名稱項(xiàng)目3數(shù)據(jù)表的創(chuàng)建與管理之任務(wù)2:創(chuàng)建表結(jié)構(gòu)計(jì)劃課時(shí)2課時(shí)內(nèi)容分析通過上一個(gè)任務(wù)的學(xué)習(xí),已經(jīng)掌握了引入數(shù)據(jù)完整性的意義,掌握了數(shù)據(jù)完整性的分類,以及用SSMS管理器窗口和SQL實(shí)現(xiàn)數(shù)據(jù)完整性的方法。本次課將學(xué)習(xí)基于數(shù)據(jù)完整性的數(shù)據(jù)表結(jié)構(gòu)的創(chuàng)建方法。教學(xué)目標(biāo)及基本要求通過教學(xué),讓學(xué)生能夠:使用SSMS管理器窗口創(chuàng)建表結(jié)構(gòu)。使用SQL命令建立表結(jié)構(gòu)。運(yùn)用SQL命令創(chuàng)建帶完整性約束的表結(jié)構(gòu)。教學(xué)重點(diǎn)使用SQL命令建立表結(jié)構(gòu)。運(yùn)用SQL命令創(chuàng)建帶完整性約束的表結(jié)構(gòu)。教學(xué)難點(diǎn)運(yùn)用SQL命令創(chuàng)建帶完整性約束的表結(jié)構(gòu)。教學(xué)方式講練結(jié)合,邊講邊練教學(xué)過程教案8:創(chuàng)建表結(jié)構(gòu)一、課程引入(1)回顧上一次的內(nèi)容。主要包括四個(gè)內(nèi)容:數(shù)據(jù)完整性的意義,數(shù)據(jù)完整性的分類,數(shù)據(jù)完整的實(shí)現(xiàn)方法。采用提問的方式,請(qǐng)學(xué)生回答。如:數(shù)據(jù)完整性包括哪些類型,實(shí)現(xiàn)數(shù)據(jù)完整性約束的主要關(guān)鍵詞,實(shí)現(xiàn)數(shù)據(jù)完整性的主要方法。(2)提出學(xué)習(xí)目標(biāo)1.利用數(shù)據(jù)類型確定表中各個(gè)字段的相關(guān)參數(shù)。2.掌握利用SSMS管理器窗口創(chuàng)建表結(jié)構(gòu)的方法。3.掌握利用SQL命令創(chuàng)建表結(jié)構(gòu)的方法。4.掌握利用SQL命令創(chuàng)建帶約束的表結(jié)構(gòu)的方法。二、新內(nèi)容學(xué)習(xí)(1)使用SSMS管理器窗口創(chuàng)建表使用SSMS管理器窗口為libsys數(shù)據(jù)庫創(chuàng)建readerInfo表,參見項(xiàng)目1中的表1-7,除主鍵約束和非空約束以外,其他約束暫不設(shè)置。(參考教材3.2.1)在增加列時(shí),要說明列名的命名規(guī)則,每一列的主要參數(shù),回顧項(xiàng)目1中的數(shù)據(jù)類型,分析每一列最適合的數(shù)據(jù)類型,長度設(shè)置的原則,設(shè)計(jì)主鍵約束和非空約束的原因。安排學(xué)生先創(chuàng)建數(shù)據(jù)庫libsys(所有參數(shù)均取默認(rèn)值以節(jié)省時(shí)間),然后建立跟老師操作相同的readerInfo數(shù)據(jù)表。(2)利用SQL命令創(chuàng)建表結(jié)構(gòu)先講解CREATETABLE命令的格式,各個(gè)參數(shù)的含義。(參考教材3.2.2)。為libsys數(shù)據(jù)庫創(chuàng)建bookInfo表或者readerInfo表,每一列的各個(gè)參數(shù)如何取值,盡量在學(xué)生討論的基礎(chǔ)上確定。安排學(xué)生操作,用成績管理數(shù)據(jù)庫scoresys中的scoreinfo表為例,用SQL命令實(shí)現(xiàn)。(3)創(chuàng)建帶完整性約束的表創(chuàng)造帶到PRIMARYKEY約束、DEFAULT約束、CHECK約束的表結(jié)構(gòu),以【例3-3】為例,可以在定義列時(shí)直接增加相應(yīng)約束,也可以先不加約束,寫好代碼后再補(bǔ)充約束。作為強(qiáng)化,老師可以繼續(xù)演示【例3-4】。安排學(xué)生實(shí)踐,完成【例3-5】。(4)技能訓(xùn)練4:建立表結(jié)構(gòu)。一般性介紹,老師可以舉一個(gè)例子演示,安排學(xué)生適當(dāng)修改再操作。三、歸納總結(jié),隨堂練習(xí),布置作業(yè)(1)數(shù)據(jù)表結(jié)構(gòu)中列的參數(shù)。(2)利用SSMS管理器窗口創(chuàng)建數(shù)據(jù)表。(3)利用SQL命令創(chuàng)建數(shù)據(jù)表。(4)利用SQL命令創(chuàng)建帶完整性約束的數(shù)據(jù)表。思考題和習(xí)題(1)創(chuàng)建數(shù)據(jù)庫與創(chuàng)建表有什么關(guān)系?SQL命令各是什么?(2)表創(chuàng)建后,有記錄嗎?(3)如果有調(diào)整表中列的位置,怎么做?請(qǐng)操作實(shí)現(xiàn)。(4)如何刪除表的完整性約束?教學(xué)后記

課題名稱項(xiàng)目3數(shù)據(jù)表的創(chuàng)建與管理之任務(wù)3:修改表結(jié)構(gòu)計(jì)劃課時(shí)2課時(shí)內(nèi)容分析通過上一個(gè)任務(wù)的學(xué)習(xí),已經(jīng)掌握了數(shù)據(jù)表結(jié)構(gòu)的組成,學(xué)會(huì)了數(shù)據(jù)表中列的參數(shù)的設(shè)置方法,能夠用SSMS管理器窗口和SQL命令創(chuàng)建數(shù)據(jù)表結(jié)構(gòu)。本次課將學(xué)習(xí)數(shù)據(jù)表結(jié)構(gòu)的修改方法。教學(xué)目標(biāo)及基本要求通過教學(xué),讓學(xué)生能夠:修改表結(jié)構(gòu)的內(nèi)容使用SSMS管理器窗口修改表結(jié)構(gòu)。使用SQL命令修改表結(jié)構(gòu)。教學(xué)重點(diǎn)使用SSMS管理器窗口修改表結(jié)構(gòu)。使用SQL命令修改表結(jié)構(gòu)。教學(xué)難點(diǎn)運(yùn)用SQL命令修改表結(jié)構(gòu)。教學(xué)方式講練結(jié)合,邊講邊練教學(xué)過程教案9:修改表結(jié)構(gòu)一、課程引入(1)回顧上一次的內(nèi)容。主要包括四個(gè)內(nèi)容:數(shù)據(jù)表列的參數(shù),運(yùn)用SSMS管理器窗口和SQL命令創(chuàng)建表結(jié)構(gòu)的方法,利用SQL命令創(chuàng)建帶約束的表結(jié)構(gòu)的方法。采用提問的方式,請(qǐng)學(xué)生回答。如:每個(gè)列包括哪些參數(shù),創(chuàng)建表的命令,創(chuàng)建帶約束的表的命令。(2)提出學(xué)習(xí)目標(biāo)1.掌握利用SSMS管理器窗口修改表結(jié)構(gòu)。2.掌握利用SQL命令修改表結(jié)構(gòu)的方法。二、新內(nèi)容學(xué)習(xí)(1)修改表結(jié)構(gòu)的內(nèi)容表結(jié)構(gòu)建立以后,如果要修改表結(jié)構(gòu),則既可以使用SSMS管理器窗口實(shí)現(xiàn),也可以使用SQL命令實(shí)現(xiàn),方法與建表的方法基本類似。修改表結(jié)構(gòu)的主要操作包括修改現(xiàn)有列的參數(shù)、增加列、刪除列、增加約束。(2)使用SSMS管理器窗口修改表在SSMS管理器窗口中右擊表名,在彈出的快捷菜單中選擇“設(shè)計(jì)”命令,即可打開表設(shè)計(jì)窗口,該窗口顯示的內(nèi)容與創(chuàng)建表結(jié)構(gòu)時(shí)打開的窗口顯示的內(nèi)容相同,可以直接修改。在修改完成后,單擊“保存”按鈕或者關(guān)閉表設(shè)計(jì)窗口使修改生效。(參考教材3.3.1)提示學(xué)生,修改表結(jié)構(gòu)時(shí),可能會(huì)引起記錄數(shù)據(jù)的變化,如丟失、精度降低等,可以通過演示讓學(xué)生理解,并分析其原因。(3)利用SQL命令修改表結(jié)構(gòu)先講解ALTERTABLE命令的格式,各個(gè)參數(shù)的含義。(參考教材3.3.2)。以libsys數(shù)據(jù)庫創(chuàng)建bookInfo表或者readerInfo表為例,講解修改表結(jié)構(gòu)的方法。講解例3-7,通過SQL命令修改表結(jié)構(gòu)。(4)修改表結(jié)構(gòu)綜合應(yīng)用老師可以繼續(xù)演示例3-8。安排學(xué)生實(shí)踐,完成例3-7和3-8??梢匝a(bǔ)充刪除表的方法,分別用SSMS管理器窗口和SQL命令實(shí)現(xiàn)。三、歸納總結(jié),隨堂練習(xí),布置作業(yè)(1)利用SSMS管理器窗口修改表結(jié)構(gòu),與創(chuàng)建表結(jié)構(gòu)方法相同。(2)利用SQL命令修改數(shù)據(jù)表。思考題和習(xí)題(1)完成本項(xiàng)目習(xí)題。(2)修改數(shù)據(jù)庫與修改表結(jié)構(gòu)的功能有什么不同?(3)修改數(shù)據(jù)庫與修改表結(jié)構(gòu)的SQL命令分別是什么?(4)修改了表結(jié)構(gòu),數(shù)據(jù)庫的參數(shù)會(huì)變化嗎?教學(xué)后記《SQLServer2022數(shù)據(jù)庫技術(shù)項(xiàng)目教程》教案課程名稱:數(shù)據(jù)庫應(yīng)用技術(shù)授課年級(jí):202X年級(jí)授課學(xué)期:202X學(xué)年第X學(xué)期教師姓名:XX老師2024年5月10日課題名稱項(xiàng)目4數(shù)據(jù)基本操作之任務(wù)1:向數(shù)據(jù)表中添加記錄計(jì)劃課時(shí)2課時(shí)內(nèi)容分析建立表結(jié)構(gòu)相當(dāng)于填寫了表頭的內(nèi)容,并沒有記錄,只相當(dāng)于空表,接下來就是輸入記錄,填入表的內(nèi)容。本次課將學(xué)習(xí)用SSMS向數(shù)據(jù)庫表中添加記錄和用SQL命令向數(shù)據(jù)庫表中添加記錄。教學(xué)目標(biāo)及基本要求通過教學(xué),讓學(xué)生掌握:1.用SSMS向數(shù)據(jù)庫表中添加記錄;2.用INSERT-VALUES命令添加數(shù)據(jù)記錄;3.用INSERT-SELECT添加數(shù)據(jù)記錄。教學(xué)重點(diǎn)1.用SSMS向數(shù)據(jù)庫表中添加記錄2.用INSERT-VALUES命令添加數(shù)據(jù)記錄教學(xué)難點(diǎn)用INSERT-VALUES命令添加數(shù)據(jù)記錄用INSERT-SELECT添加數(shù)據(jù)記錄教學(xué)方式講授為主,講練結(jié)合教學(xué)過程教案10:向數(shù)據(jù)表中添加記錄一、課程引入(1)提出任務(wù):圖書館管理系統(tǒng)的后臺(tái)數(shù)據(jù)庫libsys中,創(chuàng)建了圖書信息表bookInfo后,就需要向該表中添加圖書記錄,用以存儲(chǔ)圖書館中藏書的基本信息。展示bookInfo數(shù)據(jù)表添加記錄后的效果圖,提示學(xué)生思考向數(shù)據(jù)表中添加記錄的方法,引出本門課程的內(nèi)容。(2)提出學(xué)習(xí)目標(biāo)1.用SSMS向數(shù)據(jù)庫表中添加記錄。2.用INSERT-VALUES命令添加數(shù)據(jù)記錄。3.用INSERT-SELECT添加數(shù)據(jù)記錄。二、新內(nèi)容的講解(1)用SSMS向數(shù)據(jù)庫表中添加記錄教師首先在SSMS中演示向數(shù)據(jù)庫表bookInfo中添加一條記錄的方法,然后針對(duì)數(shù)據(jù)表中記錄排列順序進(jìn)行解釋說明(可參考教材4.1.1小節(jié))(2)用INSERT-VALUES添加數(shù)據(jù)記錄教師首先講解INSERT-VALUES語句的格式,然后教師演示、學(xué)生練習(xí)例4-1用SQL命令給表BookInfo輸入圖4-3所示的11條記錄。再教師演示、學(xué)生練習(xí)例4-2給表BookInfo添加2條記錄,這兩條記錄只有BookID、BookNmae、BookType、Writer、Publish、Price、BuyCount、AbleCount八個(gè)列有值,其它列沒有值。參考教材對(duì)命令使用注意事項(xiàng)進(jìn)行講解說明。(可參考教材4.1.2小節(jié))。(3)用INSERT-SELECT添加數(shù)據(jù)記錄教師首先講解INSERTINTOSELECT語句的格式,然后教師演示、學(xué)生練習(xí)例4-3針對(duì)libsys數(shù)據(jù)庫中的表BookInfo,把作者為“胡振華”的所有圖書數(shù)據(jù)記錄添加到數(shù)據(jù)表BookInfo_copy中。可參考教材對(duì)用INSERT-SELECT添加數(shù)據(jù)記錄進(jìn)行講解演示(可參考教材4.1.3小節(jié))。三、歸納總結(jié),隨堂練習(xí),布置作業(yè)(1)對(duì)課堂上講解的知識(shí)點(diǎn)進(jìn)行總結(jié),使用本章末尾的隨堂練習(xí)題鞏固本節(jié)課的知識(shí)點(diǎn)。思考題和習(xí)題教學(xué)后記

課題名稱項(xiàng)目4數(shù)據(jù)基本操作之任務(wù)2:更新數(shù)據(jù)表中的數(shù)據(jù)記錄計(jì)劃課時(shí)2課時(shí)內(nèi)容分析數(shù)據(jù)表中的數(shù)據(jù)經(jīng)常需要根據(jù)項(xiàng)目實(shí)際情況進(jìn)行修改更新。本次課將學(xué)習(xí)用SSMS更新數(shù)據(jù)記錄和使用SQL命令更新數(shù)據(jù)記錄。教學(xué)目標(biāo)及基本要求通過教學(xué),讓學(xué)生掌握:1.用SSMS更新數(shù)據(jù)記錄;2.用UPDATE命令更新數(shù)據(jù)記錄;教學(xué)重點(diǎn)1.用SSMS更新數(shù)據(jù)記錄;2.用UPDATE命令更新數(shù)據(jù)記錄;教學(xué)難點(diǎn)用UPDATE命令更新數(shù)據(jù)記錄教學(xué)方式講授為主,講練結(jié)合教學(xué)過程教案11:更新數(shù)據(jù)表中的數(shù)據(jù)記錄一、課程引入(1)提出任務(wù):圖書館管理系統(tǒng)的后臺(tái)數(shù)據(jù)庫libsys中,經(jīng)常需要更新圖書信息表bookInfo中已存在的圖書記錄,用以存儲(chǔ)圖書館中藏書的最新信息。提示學(xué)生思考向數(shù)據(jù)表中添加記錄的方法,引出本門課程的內(nèi)容。(2)提出學(xué)習(xí)目標(biāo)1.用SSMS更新數(shù)據(jù)記錄。2.用UPDATE命令更新數(shù)據(jù)記錄。二、新內(nèi)容的講解(1)用SSMS更新數(shù)據(jù)記錄教師首先在SSMS中演示更新數(shù)據(jù)記錄的方法,然后讓學(xué)生練習(xí)用SSMS更新數(shù)據(jù)記錄的方法(可參考教材4.2.1小節(jié))(2)用UPDATE命令更新數(shù)據(jù)記錄教師首先講解UPDATE語句的作用與格式,然后教師演示、學(xué)生練習(xí)例4-4針對(duì)libsys數(shù)據(jù)庫中的表BookInfo,把所有圖書的可借出本數(shù)(AbleCount)全部置為0,表示均不可以外借了。接著教師演示、學(xué)生練習(xí)例4-5針對(duì)libsys數(shù)據(jù)庫中的表BookInfo,對(duì)于類型為“計(jì)算機(jī)”的圖書,將類型(BookType)修改為“計(jì)算機(jī)技術(shù)”。最后教師演示、學(xué)生練習(xí)例4-6針對(duì)libsys數(shù)據(jù)庫中的表BookInfo,所有圖書可借出本數(shù)(AbleCount)全部置為購買圖書本數(shù)-1。參考教材對(duì)命令使用注意事項(xiàng)進(jìn)行講解說明。(可參考教材4.2.2小節(jié))。三、歸納總結(jié),隨堂練習(xí),布置作業(yè)(1)對(duì)課堂上講解的知識(shí)點(diǎn)進(jìn)行總結(jié),使用本章末尾的隨堂練習(xí)題鞏固本節(jié)課的知識(shí)點(diǎn)。思考題和習(xí)題教學(xué)后記

課題名稱項(xiàng)目4數(shù)據(jù)基本操作之任務(wù)3:刪除數(shù)據(jù)表中的數(shù)據(jù)記錄計(jì)劃課時(shí)2課時(shí)內(nèi)容分析軟件開發(fā)過程中最常見的功能就是對(duì)數(shù)據(jù)表及表中的數(shù)據(jù)進(jìn)行增刪改查,其中刪除功能又分為刪除數(shù)據(jù)表中數(shù)據(jù)和刪除數(shù)據(jù)兩種操作。本次課將學(xué)習(xí)刪除數(shù)據(jù)表中的部分?jǐn)?shù)據(jù)記錄和刪除數(shù)據(jù)表。教學(xué)目標(biāo)及基本要求通過教學(xué),讓學(xué)生掌握:1.刪除數(shù)據(jù)表中的部分?jǐn)?shù)據(jù)記錄;2.刪除數(shù)據(jù)表;教學(xué)重點(diǎn)1.刪除數(shù)據(jù)表中的部分?jǐn)?shù)據(jù)記錄;2.刪除數(shù)據(jù)表;教學(xué)難點(diǎn)刪除數(shù)據(jù)表中的部分?jǐn)?shù)據(jù)記錄教學(xué)方式講授為主,講練結(jié)合教學(xué)過程教案12:刪除數(shù)據(jù)表中的數(shù)據(jù)記錄一、課程引入(1)提出任務(wù):圖書館管理系統(tǒng)的后臺(tái)數(shù)據(jù)庫libsys中,經(jīng)常需要根據(jù)實(shí)際需要,刪除圖書信息表bookInfo中的記錄以及刪除廢棄或多余的數(shù)據(jù)表,如需要?jiǎng)h除所有作者為“胡振華”的所有圖書信息等。提示學(xué)生思考刪除數(shù)據(jù)表中記錄以及刪除數(shù)據(jù)表的方法,引出本門課程的內(nèi)容。(2)提出學(xué)習(xí)目標(biāo)1.刪除數(shù)據(jù)表中的部分?jǐn)?shù)據(jù)記錄。2.刪除數(shù)據(jù)表。二、新內(nèi)容的講解(1)用SSMS窗口刪除記錄教師首先在SSMS中演示刪除數(shù)據(jù)表中記錄的方法,然后讓學(xué)生練習(xí)用SSMS刪除數(shù)據(jù)表中記錄的方法(可參考教材4.3.1小節(jié))(2)用DELETE單表內(nèi)刪除數(shù)據(jù)記錄教師首先講解DELETE語句的格式,然后教師演示、學(xué)生練習(xí)例4-7針對(duì)libsys數(shù)據(jù)庫中的表BookInfo,刪除“胡振華”作者編寫的所有圖書。再教師演示、學(xué)生練習(xí)例4-8將10年前出版的圖書刪除。參考教材對(duì)命令使用注意事項(xiàng)進(jìn)行講解說明。(可參考教材4.3.1小節(jié))。(3)用DELETE跨表刪除數(shù)據(jù)記錄教師首先講解用DELETE跨表刪除數(shù)據(jù)記錄語句的格式,然后教師演示、學(xué)生練習(xí)例4-9刪除數(shù)據(jù)表Borrowinfo中所有與“胡振華”相關(guān)的數(shù)據(jù)記錄。參考教材對(duì)命令使用注意事項(xiàng)進(jìn)行講解說明。(可參考教材4.3.1小節(jié))。(4)用SSMS窗口刪除表教師首先在SSMS中演示刪除數(shù)據(jù)表的方法,然后讓學(xué)生練習(xí)用SSMS刪除數(shù)據(jù)表的方法(可參考教材4.3.2小節(jié))(5)刪除數(shù)據(jù)表中的所有數(shù)據(jù)記錄與表結(jié)構(gòu)教師首先講解使用DROPTABLE語句的格式,然后教師演示、學(xué)生練習(xí)使用DROPTABLE語句刪除數(shù)據(jù)表的方法(可參考教材4.3.2小節(jié))三、歸納總結(jié),隨堂練習(xí),布置作業(yè)(1)對(duì)課堂上講解的知識(shí)點(diǎn)進(jìn)行總結(jié),使用本章末尾的隨堂練習(xí)題鞏固本節(jié)課的知識(shí)點(diǎn)。思考題和習(xí)題教學(xué)后記《SQLServer2022數(shù)據(jù)庫技術(shù)項(xiàng)目教程》教案課程名稱:數(shù)據(jù)庫應(yīng)用技術(shù)授課年級(jí):202X年級(jí)授課學(xué)期:202X學(xué)年第X學(xué)期教師姓名:XX老師2024年5月10日課題名稱項(xiàng)目5數(shù)據(jù)查詢之任務(wù)1:基本數(shù)據(jù)查詢計(jì)劃課時(shí)2課時(shí)內(nèi)容分析通過SELECT語句從數(shù)據(jù)庫中挑選數(shù)據(jù)的過程稱為匹配查詢或查詢(query),所以SELECT語句也被稱為查詢語句。SELECT語句是SQL中使用最多的,最基本的語句,掌握了SELECT語句,距離掌握SQL就不遠(yuǎn)了。教學(xué)目標(biāo)及基本要求通過教學(xué),讓學(xué)生掌握:簡單數(shù)據(jù)查詢;WHERE子中的表達(dá)式; 統(tǒng)計(jì)數(shù)據(jù)查詢;GROUPBY子句。教學(xué)重點(diǎn)簡單數(shù)據(jù)查詢;WHERE子中的表達(dá)式教學(xué)難點(diǎn)GROUPBY子句教學(xué)方式講授為主,講練結(jié)合教學(xué)過程教案13:基本數(shù)據(jù)查詢一、課程引入1、回顧項(xiàng)目三和項(xiàng)目四學(xué)習(xí)知識(shí),引出本節(jié)主題帶領(lǐng)學(xué)生回顧項(xiàng)目三和項(xiàng)目四,如何創(chuàng)建數(shù)據(jù)表,操作數(shù)據(jù)表,鞏固libsys數(shù)據(jù)庫中三張表的結(jié)構(gòu)。提出問題:數(shù)據(jù)庫用來管理海量的數(shù)據(jù),所謂管理,最重要的工作就是從海量的數(shù)據(jù)中挑選出我們感興趣的數(shù)據(jù)。從數(shù)據(jù)庫中挑選數(shù)據(jù)需要使用SELECT語句,通過SELECT語句從數(shù)據(jù)庫中挑選出我們需要的數(shù)據(jù)的過程稱為匹配查詢或查詢(query),所以SELECT語句也被稱為查詢語句。SELECT語句是SQL語言中使用最多的、最基本的語句,掌握了SELECT語句,距離掌握SQL語言就不遠(yuǎn)了!2、提出學(xué)習(xí)目標(biāo)(1)簡單數(shù)據(jù)查詢;(2)統(tǒng)計(jì)數(shù)據(jù)查詢。二、新內(nèi)容的講解1、簡單數(shù)據(jù)查詢在bookInfo表中,如果我們只想知道每本書的書名和對(duì)應(yīng)的價(jià)格,則其他字段上的數(shù)據(jù)可能對(duì)我們的觀察造成干擾,甚至看錯(cuò)某本書的真正價(jià)格。此時(shí),我們就可以使用SELECT語句選?。ú樵儯┏鑫覀冃枰淖侄螖?shù)據(jù)。在查詢窗口中輸入以下代碼并執(zhí)行。SELECTBookName,PriceFROMbookInfo執(zhí)行結(jié)果如圖由上述操作過程可以總結(jié)出,使用SELECT語句查詢出我們需要的列的格式如下:SELECT<列名1[,列名2…]>FROM<表名>【例5-1】從數(shù)據(jù)表readerInfo中查詢ReaderName列、ReaderSex列、Mobile列和Department列中的數(shù)據(jù)。readerInfo表中的數(shù)據(jù)如圖所示查詢命令如下:SELECTReaderName,ReaderSex,Mobile,DepartmentFROMreaderInfo查詢結(jié)果如圖所示。在某些特殊情況下,我們確實(shí)需要查詢表中所有列的數(shù)據(jù),這時(shí)可以在SELECT子句中列出所有列的名字。命令如下:SELECTReaderID,BookID,BorrowDate,Deadline,ReturnDateFROMborrowInfo也可以使用*符號(hào)代替所有列名,命令如下:SELECT*FROMborrowInfo在對(duì)表進(jìn)行查詢時(shí),還可以同時(shí)使用“別名”代替原來的列名,共有3種方法引入列的別名:(1)列名AS別名。(2)列名別名。(3)別名=列名。這3種方法可以在一個(gè)SELECT語句混合使用,如果列不指定別名,則別名就是列名本身。【例5-2】查詢bookInfo表中的BookID、BookNmae、Publisher、Price等列,并在標(biāo)題欄中顯示書號(hào)、書名、出版社、價(jià)格字樣,而不是顯示列名。查詢命令如下:SELECTBookIDAS書號(hào),Bookname書名,出版社=Publisher,PriceAS價(jià)格FROMbookInfo查詢結(jié)果如圖所示。2、WHERE子中的表達(dá)式前面的例子都是將表中所有的行(記錄)都選取出來,但在實(shí)際工作中,一個(gè)表中可能有幾萬甚至幾十萬行記錄,不可能也不需要每次都需要選取出全部記錄,在大部分情況下都是要選取出滿足“圖書類型為計(jì)算機(jī)”“價(jià)格在40元以上”等某些條件的記錄。SELECT語句可以通過WHERE子句來指定查詢記錄的條件,格式如下:SELECT<列名1[,列名2…]>FROM<表名>WHERE<條件表達(dá)式>在WHERE子句中可以指定“某個(gè)列的值等于特定字符串”或“某個(gè)列的值大于一個(gè)數(shù)字”等條件。執(zhí)行含有這些條件的SELECT語句,就可以查詢出只符合該條件的記錄了。【例5-3】查詢bookInfo表中清華大學(xué)出版社出版的圖書的所有記錄。SELECT*FROMbookInfoWHEREPublisher='清華大學(xué)出版社'查詢結(jié)果如圖所示在WHERE子句中,允許用戶在查詢條件(表達(dá)式)中使用各類運(yùn)算符,過濾掉不滿足要求的數(shù)據(jù)行,只挑選符合要求的數(shù)據(jù)行。運(yùn)算符包括比1、較運(yùn)算符:>、>=、=、<、<=、!>、!<、<>、!=2、范圍運(yùn)算符:BETWEEN…AND和NOTBETWEEN…AND3、列表運(yùn)算符:IN(項(xiàng)1,項(xiàng)2……)、NOTIN(項(xiàng)1,項(xiàng)2……)4、空值判斷符:ISNULL、ISNOTNULL5、邏輯運(yùn)算符:NOT、AND、OR6、通配符:百分號(hào)%、下劃線_、方括號(hào)[]、[^]7、模式匹配符:LIKE、NOTLIKE【例5-4】查詢bookInfo表中2019年以后出版的圖書的BookID、BookName、Writer、PublishDate等列中的數(shù)據(jù)。SELECTBookID,BookName,Writer,PublishDateFROMbookInfoWHEREPublishDate>='2020-01-01'查詢結(jié)果如圖所示【例5-5】查詢2020年出版的圖書,只需要BookID列、BookName列、Publisher列中的數(shù)據(jù)。SELECTBookID,BookName,Publisher,PublishDateFROMbookInfoWHEREPublishDateBETWEEN'2020-01-01'AND'2020-12-31'查詢結(jié)果如圖所示【例5-6】查詢“張”姓作者或“劉”姓作者編寫的書。SELECT*FROMbookInfoWHEREWriterLIKE'張%'ORWriterLIKE'劉%'查詢結(jié)果如圖所示【例5-7】查詢電子工業(yè)出版社出版的所有圖書,以及不是清華大學(xué)出版社出版的但價(jià)格高于40元的所有圖書。SELECT*FROMbookInfoWHEREPublisher='電子工業(yè)出版社'ORPublisher<>'清華大學(xué)出版社'ANDPrice>40查詢結(jié)果如圖所示【例5-8】在bookInfo表中查詢Remark列為NULL的記錄的BookID列、BookName列、Price列、Remark列中的內(nèi)容。SELECTBookID,BookName,Price,RemarkFROMbookInfoWHERERemarkISNULL查詢結(jié)果如圖所示【例5-9】在bookInfo表中記錄了每本書的價(jià)格(Price)和購買的數(shù)量(BuyCount),查詢所有圖書的書名(BookName)、價(jià)格(Price)、購進(jìn)數(shù)(BuyCount),并計(jì)算每種書的總價(jià)值。SELECTBookName,Price,BuyCount,Price*BuyCountFROMbookInfo查詢結(jié)果如圖所示為了保證TOP子句查詢結(jié)果的確定性,SQL語言允許SELECT語句使用ORDERBY子句對(duì)查詢結(jié)果進(jìn)行排序。語法格式如下:SELECT[Top(n)]<列名1[,列名2…]>FROM<表名>WHERE<條件表達(dá)式>ORDERBY<列名1ASC|DESC[,列名2ASC|DESC…]>說明:(1)當(dāng)使用ORDERBY子句對(duì)SELECT查詢結(jié)果進(jìn)行排序時(shí),可以選擇升序ASC或降序DESC,升序ASC為默認(rèn)排序順序,可以省略(2)對(duì)于NULL值,SQLServer和MySQL默認(rèn)它是最小值,ORACLE中默認(rèn)其為最大值,其他數(shù)據(jù)庫管理系統(tǒng)需要自行測試(3)ORDERBY允許使用SELECT子句中定義的“別名”進(jìn)行排序?!纠?-10】在bookInfo表查詢BuyCount列中的值大于20的,并且BuyCount列中的值最大的前5種圖書的BookID、BookName、Price、BuyCount、BuyDate等列中的數(shù)據(jù)。SELECTTOP(5)BookID,BookName,Price,BuyCount,BuyDateFROMbookInfoWHEREBuyCount>20ORDERBYBuyCountDESC查詢結(jié)果如圖所示【例5-11】在bookInfo表查詢BuyCount列中的值大于20的,并且BuyCount列中的值最大的前5種圖書的BookID、BookName、Price、BuyCount、BuyDate等列中的數(shù)據(jù)。如果BuyCount列中的值相同,則按照BuyDate列進(jìn)行升序排序。SELECTTOP(5)BookID,BookName,Price,BuyCount,BuyDateFROMbookInfoWHEREBuyCount>20ORDERBYBuyCountDESC,BuyDate查詢結(jié)果如圖所示3、統(tǒng)計(jì)數(shù)據(jù)查詢SQL語言不僅允許SELECT語句進(jìn)行簡單的計(jì)算,還提供聚合函數(shù)用于復(fù)雜的計(jì)算。所謂聚合函數(shù)是用于對(duì)多條記錄進(jìn)行記錄統(tǒng)計(jì)、數(shù)據(jù)運(yùn)算的函數(shù),它對(duì)多條記錄進(jìn)行計(jì)算,返回一個(gè)值。聚合函數(shù)是SQL標(biāo)準(zhǔn)規(guī)定的,大多數(shù)數(shù)據(jù)庫管理系統(tǒng)都支持使用。聚合函數(shù)主要有COUNT(求記錄數(shù))、SUM(求和)、AVG(求平均值)、MAX(求最大值)、MIN(求最小值)這5個(gè)。(1)COUNT函數(shù)COUNT函數(shù)的功能是求SELECT語句查詢出來的記錄總數(shù),其格式是COUNT(*)或COUNT(DISTINCT列名)?!纠?-12】查詢bookInfo表中的記錄數(shù)。SELECTCOUNT(*)AS記錄數(shù)FROMbookInfo查詢結(jié)果如圖所示【例5-13】查詢作者“胡振華”編寫的圖書的數(shù)量。SELECTcount(*)AS圖書數(shù)FROMbookInfoWHEREWriter='胡振華'查詢結(jié)果如圖所示【例5-14】查詢bookInfo表中有多少個(gè)作者。SELECTCOUNT(DISTINCTWriter)AS作者數(shù)FROMbookInfo查詢結(jié)果如圖所示(2)SUM函數(shù)SUM函數(shù)用于求某個(gè)列的總和,其格式是SUM(列名)。SUM函數(shù)要求列的類型只能是數(shù)值型或貨幣型。在統(tǒng)計(jì)時(shí),SUM函數(shù)會(huì)自動(dòng)忽略NULL值?!纠?-15】查詢bookInfo表中購買圖書(BuyCount)的總數(shù)。SELECTSUM(BuyCount)AS購進(jìn)圖書總數(shù)FROMbookInfo查詢結(jié)果如圖所示(3)AVG函數(shù)AVG函數(shù)用于求某個(gè)列的平均值,其格式是AVG(列名),其要求與SUM函數(shù)相同,也會(huì)自動(dòng)忽略掉NULL值?!纠?-16】查詢bookInfo表中清華大學(xué)出版社出版的圖書的平均價(jià)格。SELECTAVG(Price)AS平均價(jià)格FROMbookInfoWHEREPublisher='清華大學(xué)出版社'查詢結(jié)果如圖所示(4)MAX函數(shù)和MIN函數(shù)MAX函數(shù)和MIN函數(shù)分別用于求某個(gè)列的最大值和最小值,其格式分別是MAX(列名)和MIN(列名)。MAX函數(shù)和MIN函數(shù)要求列的類型是可以比較大小的,常見的是數(shù)值型、貨幣型、字符型和日期型。在統(tǒng)計(jì)時(shí),MAX函數(shù)和MIN函數(shù)會(huì)自動(dòng)忽略NULL值。【例5-17】查詢bookInfo表中的最大價(jià)格和最小價(jià)格。SELECTMAX(Price)AS最大價(jià)格,MIN(Price)AS最小價(jià)格FROMbookInfo查詢結(jié)果如圖所示SQL語言除可以對(duì)查詢結(jié)果的全部記錄進(jìn)行計(jì)算以外,還可以根據(jù)指定列進(jìn)行分組計(jì)算,如查詢每個(gè)出版社各自出版了幾本書。指定分組依據(jù)的列通過GROUPBY子句完成,完整語法格式如下:SELECT[Top(n)][列名1,列名2…]<聚合函數(shù)1()[,聚合函數(shù)2()…]>FROM<表名>WHERE<條件表達(dá)式>GROUPBY<列名1[,列名2…]>ORDERBY<列名1[,列名2…]>說明:(1)SELECT子句中必須有“聚合函數(shù)”。雖然沒有聚合函數(shù)而有GROUPBY子句的語句可以正常執(zhí)行,但此時(shí)GROUPBY子句就沒有出現(xiàn)的意義了。(2)SELECT子句中可以有一個(gè)或多個(gè)“列名”,但這些列名必須在GROUPBY子句中出現(xiàn)過。使用聚合函數(shù)計(jì)算的列不受這個(gè)限制。(3)SELECT子句中可以為列指定“別名”,但GROUPBY子句中不能使用“別名”來分組。(4)分組計(jì)算結(jié)果的返回順序也是隨機(jī)的,可以使用ORDERBY子句進(jìn)行排序,但是ORDERBY子句只能寫在GROUPBY子句的后面,同時(shí)ORDERBY子句中的列名也必須在GROUPBY子句中出現(xiàn)過?!纠?-18】查詢bookInfo表中每個(gè)出版社出版的圖書的平均價(jià)格。SELECTPublisher,AVG(Price)FROMbookInfoGROUPBYPublisher查詢結(jié)果如圖所示如果想查詢平均價(jià)格大于45元的圖書,則不能使用WHERE子句,需要使用HAVING子句,HAVING子句必須寫在GROUPBY子句之后、ORDERBY子句之前。格式如下:SELECT[Top(n)][列名1,列名2…]<聚合函數(shù)1()[,聚合函數(shù)2()…]>FROM<表名>WHERE<條件表達(dá)式>GROUPBY<列名1[,列名2…]>HAVING聚合函數(shù)表達(dá)式ORDERBY<列名1[,列名2…]>【例5-19】查詢bookInfo表中每個(gè)出版社出版的圖書的平均價(jià)格,返回其中平均價(jià)格大于45元的出版社名稱和平均價(jià)格。SELECTPublisher,AVG(Price)FROMbookInfoGROUPBYPublisherHAVINGAVG(Price)>45查詢結(jié)果如圖所示三、歸納總結(jié),隨堂練習(xí),布置作業(yè)1、對(duì)課堂上講解的知識(shí)點(diǎn)進(jìn)行總結(jié),使用高校教輔平臺(tái)中的隨堂練習(xí)題鞏固本節(jié)課的知識(shí)點(diǎn)。思考題和習(xí)題請(qǐng)參照教材5.1.1&5.1.2節(jié)內(nèi)容完成“技能訓(xùn)練6:單表查詢”教學(xué)后記

課題名稱項(xiàng)目5數(shù)據(jù)查詢之任務(wù)2:多表連接查詢計(jì)劃課時(shí)4課時(shí)內(nèi)容分析在查詢數(shù)據(jù)時(shí),如果數(shù)據(jù)的來源是數(shù)據(jù)庫中兩個(gè)或兩個(gè)以上的表,則系統(tǒng)先按照一定的規(guī)則將這些表中的數(shù)據(jù)組合到一起,構(gòu)成一個(gè)虛擬的大表,然后就可以像普通表一樣,在這個(gè)虛擬表中查詢數(shù)據(jù)了。在通常情況下,多個(gè)表之間有著公共的字段或者通過外鍵約束來建立連接關(guān)系。如果兩個(gè)表沒有任何相同的字段,則可以通過比較類型相同的兩個(gè)列中的值的大小進(jìn)行查詢教學(xué)目標(biāo)及基本要求通過教學(xué),讓學(xué)生掌握:交叉連接查詢;內(nèi)連接查詢;外連接查詢;自連接查詢。教學(xué)重點(diǎn)內(nèi)連接查詢外連接查詢教學(xué)難點(diǎn)外連接查詢自連接查詢教學(xué)方式講授為主,講練結(jié)合教學(xué)過程教案14:多表連接查詢一、課程引入(1)回顧上節(jié)學(xué)習(xí)知識(shí),引出本節(jié)主題我們已經(jīng)學(xué)會(huì)了,如從一張表中獲取我們需要的數(shù)據(jù)。但是由于各方面的原因,某些情況下,數(shù)據(jù)不能存放在一個(gè)表中。例如,在libsys數(shù)據(jù)庫中,bookinfo表中只存放了圖書名稱、作者等信息,圖書的借閱信息被存放到了borrowinfo表中,讀者的姓名、部門等信息被存放到了readerinfo表中。此時(shí)如果想知道某本書被誰借走了,就必須綜合這3個(gè)表中的信息才能得到答案。這種情況我們稱為連接查詢(2)提出學(xué)習(xí)目標(biāo)1. 交叉連接查詢;2. 內(nèi)連接查詢;3. 外連接查詢;4. 自連接查詢。二、新內(nèi)容的講解在查詢數(shù)據(jù)時(shí),如果數(shù)據(jù)的來源是數(shù)據(jù)庫中兩個(gè)或兩個(gè)以上的表,則系統(tǒng)先按照一定的規(guī)則將這些表中的數(shù)據(jù)組合到一起,構(gòu)成一個(gè)虛擬的大表,然后就可以像普通表一樣,在這個(gè)虛擬表中查詢數(shù)據(jù)了。在通常情況下,多個(gè)表之間有著公共的字段或者通過外鍵約束來建立連接關(guān)系。如果兩個(gè)表沒有任何相同的字段,則可以通過比較類型相同的兩個(gè)列中的值的大小進(jìn)行查詢。1、交叉連接查詢交叉連接又稱笛卡兒積,系統(tǒng)會(huì)將一個(gè)表中的每條記錄和其他表中的每條記錄分別組合,形成若干條記錄,構(gòu)成一個(gè)新的虛擬表。交叉連接查詢的語法格式如下:SELECT列名1[,列名2…]FROM表名1CROSSJOIN表名2[CROSSJOIN表名3…][WHERE查詢條件]查詢結(jié)果類型于如下圖【例5-20】在readerInfo表和borrowInfo表的交叉連接中,查詢讀者姓名(ReaderName字段)為“胡大龍”的記錄,只需返回readerInfo表中的ReaderID列和ReaderName列內(nèi)的數(shù)據(jù),以及borrowInfo表中的ReaderID列和BookID列內(nèi)的數(shù)據(jù)。SELECTreaderInfo.ReaderID,ReaderName,borrowInfo.ReaderID,BookIDFROMreaderInfo,borrowinfoWHEREReaderName='胡大龍'查詢結(jié)果如圖所示說明:(1)從第二條到之后的記錄,可以看到借書人的ReaderID字段與胡大龍的ReaderID字段根本不一樣,但數(shù)據(jù)庫依然機(jī)械地按照交叉連接的規(guī)則將它們組合到了一起,這樣的數(shù)據(jù)對(duì)了解信息根本沒什么用,甚至?xí)礤e(cuò)誤(2)在交叉連接查詢中,關(guān)鍵字CROSSJOIN可以省略,用逗號(hào)代替(3)由于兩個(gè)表中都有ReaderID列,因此要以“表名.列名”的形式指定哪個(gè)ReaderID列顯示在哪個(gè)位置。ReaderName列和BookID列各自只存在于一個(gè)表中,就不用通過“表名”進(jìn)行區(qū)分了。2、內(nèi)連接查詢在交叉連接中,由于是沒有限制的,其中一個(gè)表的每條記錄都會(huì)和另一個(gè)表中的每條記錄連接在一起,因此產(chǎn)生的數(shù)據(jù)絕大部分是無效信息。那么如果給記錄的連接加上一個(gè)限制,則得到的數(shù)據(jù)就是有效信息了,這就是內(nèi)連接。內(nèi)連接查詢的語法格式如下:SELECT列名1[,列名2…]FROM表名1INNERJOIN表名2ON連接條件[INNERJOIN表名3ON連接條件…][WHERE查詢條件]在內(nèi)連接中,以兩個(gè)表為例,如果查詢語句為以下形式:SELECT*FROM表1INNERJOIN表2ON編號(hào)=序號(hào)查詢結(jié)果類型于如下圖【例5-21】在readerInfo表和borrowInfo表的內(nèi)連接中,查詢曾經(jīng)借過書的每位讀者的編號(hào)、姓名和所借圖書的編號(hào)。SELECTreaderInfo.ReaderID,ReaderName,borrowInfo.ReaderID,BookIDFROMreaderInfoINNERJOINborrowInfoONreaderInfo.ReaderID=borrowInfo.ReaderID查詢結(jié)果如圖所示內(nèi)連接是使用最頻繁的連接語句,SQL語言提供了一種簡單寫法:SELECT列名1[,列名2…]FROM表名1,表名2[,表名3…]WHERE查詢條件【例5-23】通過readerInfo、borrowInfo、bookInfo這3個(gè)表,查詢每位讀者都曾經(jīng)借過哪些圖書。SELECTR.ReaderID,ReaderName,B1.BookID,BookNameFROMreaderInfoR,borrowInfoB1,bookInfoB2WHERER.ReaderID=B1.ReaderIDANDB1.BookID=B2.BookID查詢結(jié)果如圖所示說明:(1)為了降低書寫表名的難度,F(xiàn)ROM子句中為每個(gè)表起了一個(gè)“別名”,格式和用法與列的“別名”類似。(2)在這種格式中,如果缺少WHERE子句,就變成了交叉連接語句。(3)SELECT子句中的B1.BookID列也可以使用B2.BookID,查詢結(jié)果不變。這說明borrowInfo表作為連接readerInfo表與bookInfo表的橋梁,可以不返回該表中的任何一個(gè)列。3、外連接查詢在SQL中的外連接查詢分為左連接、右連接和全連接,語法格式和內(nèi)連接查詢的語法格式類似,只有一個(gè)單詞不同。外連接查詢的語法格式如下:SELECT列名1[,列名2…]FROM表名1LEFT(或RIGHT,或FUll)JOIN表名2ON連接條件[LEFT(或RIGHT,或FUll)JOIN表名3ON連接條件…][WHERE查詢條件]以兩個(gè)表為例,如果查詢語句為以下形式:SELECT*FROM表1LEFT(或RIGHT,或FUll)JOIN表2ON編號(hào)=序號(hào)查詢結(jié)果類型于如下圖這里以左連接為例,分析一下外連接的連接方式。右連接的情況與左連接正好相反。左連接以左表為主,即左表中的所有記錄不論如何都會(huì)被返回,右表只返回符合連接條件的記錄,具體分為以下3種情況:(1)如果“表1”中的某條記錄在“表2”中剛好只有一條記錄可以匹配,則在返回的結(jié)果中會(huì)生成一個(gè)新的行。(2)如果“表1”中的某條記錄在“表2”中有N條記錄可以匹配,則在返回結(jié)果中也會(huì)生成N個(gè)新的行,這些行所包含的“表1”的字段值是重復(fù)的。(3)如果“表1”中的某條記錄在“表2”中沒有匹配的記錄,則在返回結(jié)果中仍然會(huì)生成一個(gè)新的行,只是該行所包含的“表2”的字段值都是NULL。全連接是返回兩個(gè)表中的全部記錄,符合連接條件的記錄相互匹配,不符合連接條件的記錄與NULL匹配。對(duì)于初學(xué)者,經(jīng)常分不清楚哪個(gè)表是左邊的表,哪個(gè)是右邊的表。此時(shí)可以觀察表名在語句中的位置,表名在JOIN的左邊或前面的表就是左邊的表,表名在JOIN的右邊或后面的表就是右表。在內(nèi)連接、左連接、右連接和全連接中,兩個(gè)表內(nèi)記錄的匹配模式一樣,只是選取的記錄數(shù)量不一樣,如果用數(shù)學(xué)集合知識(shí)表示,則4種連接選取的記錄數(shù)量下圖所示【例5-22】在readerInfo表和borrowInfo表中查詢,要求返回每位讀者的編號(hào)、姓名,曾借過書的讀者就返回圖書的編號(hào),沒借過書的讀者就返回NULL。SELECTreaderInfo.ReaderID,ReaderName,BookIDFROMreaderInfoLEFTJOINborrowInfoONreaderInfo.ReaderID=borrowInfo.ReaderID查詢結(jié)果如圖所示4、自連接查詢在readerInfo表中,如果想查詢哪些讀者的年齡比胡大龍的年齡大,應(yīng)該如何編寫查詢語句?是否可以使用以下語句?SELECTReaderID,ReaderName,ReaderSex,ReaderAge,Department,ReaderType,MobileFROMreaderInfoWHEREReaderAge>39這是不行的,因?yàn)樵诓樵冎?,我們并不知道胡大龍的年齡是39歲,WHERE子句中的查詢條件無法編寫。有人說,那先查詢出胡大龍的年齡,把結(jié)果寫在WHERE子句的查詢條件中就可以了。這的確是一條正確的思路,我們將在下一節(jié)“子查詢”中介紹這種思路的實(shí)現(xiàn)方法。在本節(jié)中,我們也可以使用連接查詢的方法解決這個(gè)問題。【例5-24】在readerInfo表中,查詢年齡比胡大龍的年齡大的所有讀者的姓名和年齡。思考過程:(1)姓名和年齡都在readerInfo表中,那么如何進(jìn)行連接查詢呢?可以想象將readerInfo表抄寫兩份,這樣就有兩個(gè)表可以連接了。SELECTa.ReaderNamea表中的姓名,a.ReaderAgea表中的年齡,b.ReaderNameb表中的姓名,b.ReaderAgeb表中的年齡FROMreaderInfoa,readerInfob說明:①由于是一個(gè)表與自己連接,表名相同,因此為了區(qū)分列的來源,必須為表起別名。②為了便于理解,語句中為每個(gè)列也命名了別名。③由于沒有WHERE查詢條件,因此上述語句生成了如圖所示的交叉連接查詢結(jié)果。(2)在上述語句的基礎(chǔ)上,加入WHERE查詢條件:SELECTa.ReaderNamea表中的姓名,a.ReaderAgea表中的年齡,b.ReaderNameb表中的姓名,b.ReaderAgeb表中的年齡FROMreaderInfoa,readerInfobWHEREa.ReaderName='胡大龍'可以得到如圖所示的內(nèi)連接查詢結(jié)果。這里使用a.ReaderName或b.ReaderName作為查詢條件,查詢結(jié)果是一樣的。(3)在上述語句的基礎(chǔ)上,再加入查詢條件“a表中的年齡<b表中的年齡”,并對(duì)查詢的列進(jìn)行修改,就可以得到最終查詢語句:SELECTb.ReaderName,b.ReaderAgeFROMreaderInfoa,readerInfobWHEREa.ReaderName='胡大龍'ANDa.ReaderAge<b.ReaderAge查詢結(jié)果如圖所示。在這個(gè)例子中,這種一個(gè)表與自身進(jìn)行連接查詢的方法被稱為自連接查詢。連接查詢語句的編寫比較復(fù)雜,希望通過這個(gè)例子的思考過程,能讓大家進(jìn)一步理解連接查詢。連接查詢大部分可以用下節(jié)將要介紹的“子查詢”替代,但由于連接查詢的速度比子查詢的速度要快,因此在實(shí)際工作中應(yīng)盡量使用連接查詢。三、歸納總結(jié),隨堂練習(xí),布置作業(yè)1、對(duì)課堂上講解的知識(shí)點(diǎn)進(jìn)行總結(jié),使用高校教輔平臺(tái)中的隨堂練習(xí)題鞏固本節(jié)課的知識(shí)點(diǎn)。思考題和習(xí)題請(qǐng)參照教材5.2.1&5.2.2&5.2.3節(jié)內(nèi)容完成“技能訓(xùn)練7:多表連接查詢”教學(xué)后記

課題名稱項(xiàng)目5數(shù)據(jù)查詢之任務(wù)3:子查詢計(jì)劃課時(shí)2課時(shí)內(nèi)容分析當(dāng)一個(gè)SELECT語句被放在其他SQL語句中時(shí),這個(gè)SELECT語句就被稱為子查詢。子查詢也被稱為內(nèi)部查詢或內(nèi)部選擇,而包含子查詢的語句也被稱為外部查詢或外部選擇。教學(xué)目標(biāo)及基本要求通過教學(xué),讓學(xué)生掌握:子查詢;聯(lián)合查詢。教學(xué)重點(diǎn)1. 子查詢圖書館管理系統(tǒng)的組成教學(xué)難點(diǎn)1. 聯(lián)合查詢教學(xué)方式講授為主,講練結(jié)合教學(xué)過程教案15:子查詢一、課程引入(1)回顧上一節(jié)學(xué)習(xí)知識(shí),引出本節(jié)主題帶領(lǐng)學(xué)生回顧“查詢哪些讀者的年齡比胡大龍的年齡大”的問題。提出問題:是否能夠在一個(gè)SELECT語句中進(jìn)行兩次查詢(2)提出學(xué)習(xí)目標(biāo)1.子查詢;2.聯(lián)合查詢。二、新內(nèi)容的講解1、子查詢對(duì)于任務(wù)5.2中“查詢哪些讀者的年齡比胡大龍的年齡大”的問題,有人提出如果WHERE子句中可以直接使用查詢結(jié)果,就可以寫出以下語句解決問題:SELECTReaderName,ReaderAgeFROMreaderInfoWHEREReaderAge>(查詢胡大龍年齡的SELECT語句)SQL確實(shí)支持這種查詢方式,稱為子查詢。上面的查詢語句可以改寫成以下形式:SELECTReaderName,ReaderAgeFROMreaderInfoWHEREReaderAge>(SELECTReaderAgeFROMreaderInfoWHEREReaderName='胡大龍')當(dāng)一個(gè)SELECT語句被放在其他SQL語句中時(shí),這個(gè)SELECT語句就被稱為子查詢。子查詢也被稱為內(nèi)部查詢或內(nèi)部選擇,而包含子查詢的語句也被稱為外部查詢或外部選擇。子查詢語句必須放英文圓括號(hào)中。子查詢不能包含COMPUTE或FORBROWSE子句,并且ORDERBY子句只能在子查詢包含TOP子句時(shí)出現(xiàn)。SQLServer數(shù)據(jù)庫不支持子查詢包含ntext、text和image數(shù)據(jù)類型的結(jié)果。子查詢可以嵌套在SELECT、INSERT、UPDATE或DELETE語句或其他子查詢語句中。當(dāng)子查詢嵌套在另一個(gè)子查詢中時(shí),SQLServer允許最多32層的子查詢嵌套。SQL允許在任何可以使用表達(dá)式的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論