《數(shù)據(jù)庫SQL ServeSQLite教程》 教案 第7章 Transact-SQL應(yīng)用_第1頁
《數(shù)據(jù)庫SQL ServeSQLite教程》 教案 第7章 Transact-SQL應(yīng)用_第2頁
《數(shù)據(jù)庫SQL ServeSQLite教程》 教案 第7章 Transact-SQL應(yīng)用_第3頁
《數(shù)據(jù)庫SQL ServeSQLite教程》 教案 第7章 Transact-SQL應(yīng)用_第4頁
《數(shù)據(jù)庫SQL ServeSQLite教程》 教案 第7章 Transact-SQL應(yīng)用_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

數(shù)據(jù)庫SQLServeSQLite教程課程教案課程名稱:數(shù)據(jù)庫SQLServeSQLite教程課程號:課程學(xué)分:2參考學(xué)時:32課程性質(zhì):專業(yè)必修課適用專業(yè):計(jì)算機(jī)類專業(yè)上課時間:授課教師:負(fù)責(zé)人:審核單位:年月日-1-一、課程基本信息課程名稱數(shù)據(jù)庫SQLServeSQLite教程課程號課程性質(zhì)專業(yè)必修課開課部門課程負(fù)責(zé)人課程團(tuán)隊(duì)授課學(xué)期學(xué)分/學(xué)時2/32授課語言漢語先修課程數(shù)據(jù)庫SQLServeSQLite教程課程簡介從理論實(shí)踐一體化角度出發(fā),介紹了數(shù)據(jù)庫的基本概念、理論、模型和方法,同時從知識技能的邏輯順序出發(fā),深入淺出地介紹了數(shù)據(jù)庫技術(shù)的相關(guān)內(nèi)容,使學(xué)生可以快速掌握數(shù)據(jù)庫系統(tǒng)的原理,應(yīng)用有關(guān)工具學(xué)習(xí)SQL,并在C#、Python等相關(guān)課程中應(yīng)用,在實(shí)際應(yīng)用中解決實(shí)際問題。授課班級

二、課程授課教案第7章,共11章講課主題Transact-SQL應(yīng)用學(xué)時2學(xué)時教學(xué)目標(biāo)從理論實(shí)踐一體化角度出發(fā),介紹了數(shù)據(jù)庫的基本概念、理論、模型和方法,同時從知識技能的邏輯順序出發(fā),深入淺出地介紹了數(shù)據(jù)庫技術(shù)的相關(guān)內(nèi)容,使學(xué)生可以快速掌握數(shù)據(jù)庫系統(tǒng)的原理,應(yīng)用有關(guān)工具學(xué)習(xí)SQL,并在C#、Python等相關(guān)課程中應(yīng)用,在實(shí)際應(yīng)用中解決實(shí)際問題。教學(xué)重點(diǎn)、難點(diǎn)Transact-SQL簡稱T-SQL,是標(biāo)準(zhǔn)SQL語言的增強(qiáng)版。它對SQL-92標(biāo)準(zhǔn)進(jìn)行了幾種擴(kuò)展以增強(qiáng)其性能,為處理大量數(shù)據(jù)提供必要的結(jié)構(gòu)化處理能力,并作為應(yīng)用程序與SQLServer溝通的主要語言。T-SQL提供標(biāo)準(zhǔn)SQL的數(shù)據(jù)定義、操作和控制的功能,加上延伸的函數(shù)、系統(tǒng)預(yù)存程序以及程序設(shè)計(jì)結(jié)構(gòu),讓程序設(shè)計(jì)更有彈性。教學(xué)設(shè)計(jì)授課提綱及重難點(diǎn)分析教學(xué)方法及課程思政設(shè)計(jì)教學(xué)時間7.1T-SQL運(yùn)算符與表達(dá)式運(yùn)算符是一種符號,用來指定在一個或多個表達(dá)式中執(zhí)行的操作。SQLServer2008R2的運(yùn)算符有算術(shù)運(yùn)算符、位運(yùn)算符、比較運(yùn)算符、邏輯運(yùn)算符、字符串連接運(yùn)算符、賦值運(yùn)算符等。1.算術(shù)運(yùn)算符算術(shù)運(yùn)算符在兩個表達(dá)式間執(zhí)行數(shù)學(xué)運(yùn)算,這兩個表達(dá)式可以是任何數(shù)字?jǐn)?shù)據(jù)類型。算術(shù)運(yùn)算符有+(加)、-(減)、*(乘)、/(除)和%(求模)5種運(yùn)算。+(加)和-(減)運(yùn)算符也可用于對datetime及smalldatetime值進(jìn)行算術(shù)運(yùn)算。2.位運(yùn)算符位運(yùn)算符用于對兩個表達(dá)式進(jìn)行的位操作,這兩個表達(dá)式可為整型或與整型兼容的數(shù)據(jù)類型。SQL中的位運(yùn)算不但可以取出各種值,而且還可以對數(shù)據(jù)進(jìn)行排序。3.比較運(yùn)算符比較運(yùn)算符用于測試兩個表達(dá)式的值是否相同,運(yùn)算結(jié)果為“true”或“false”。4.邏輯運(yùn)算符邏輯運(yùn)算符用于對某個條件進(jìn)行測試,運(yùn)算結(jié)果為“true”或“false”。5.字符串連接運(yùn)算符字符串連接運(yùn)算符通過運(yùn)算符“+”實(shí)現(xiàn)兩個或多個字符串的連接運(yùn)算。6.賦值運(yùn)算符在給局部變量賦值的set和select語句中使用的“=”運(yùn)算符稱為賦值運(yùn)算符。賦值運(yùn)算符用于將表達(dá)式的值賦予另外一個變量,也可以使用賦值運(yùn)算符在列標(biāo)題和為列定義值的表達(dá)式之間建立關(guān)系。30min7.2T-SQL的變量變量是執(zhí)行程序中必不可少的部分,主要用來在程序運(yùn)行過程中存儲和傳遞數(shù)據(jù)。變量其實(shí)就是內(nèi)存中的一個存儲區(qū)域,存儲在這個區(qū)域中的數(shù)據(jù)就是變量的值,由系統(tǒng)或用戶定義并賦值。T-SQL語句中的變量有兩種:局部變量和全局變量。這兩種變量在使用方法和具體意義上均不相同。7.2.1局部變量1.概念及其用途局部變量是作用域局限在一定范圍內(nèi)的變量,是用戶自定義的變量。一般來說,局部變量的使用范圍局限于定義它的批處理內(nèi)。定義它的批處理中的SQL語句可以引用這個局部變量,直到批處理結(jié)束,這個局部變量的生命周期也就結(jié)束了。局部變量在程序中通常用來存儲從表中查詢到的數(shù)據(jù)或在程序執(zhí)行過程中用于暫存變量。通常將其用于下面3種情況:(1)作為計(jì)數(shù)器,計(jì)算循環(huán)執(zhí)行的次數(shù)或控制循環(huán)執(zhí)行的次數(shù)。(2)保存數(shù)據(jù)值以供控制流語句測試。(3)保存由存儲過程返回代碼返回的數(shù)據(jù)值。2.聲明及其賦值1)聲明局部變量在使用一個局部變量之前,必須先聲明該變量。其語法格式如下:declare@變量名變量類型[,...n]2)局部變量賦值局部變量被創(chuàng)建之后,系統(tǒng)將其初始值設(shè)為“null”。若要改變局部變量的值,可以使用set語句或select語句給局部變量重新賦值。select語句的語法格式如下:select@變量名=表達(dá)式[,...]set語句的語法格式如下:set@變量名=表達(dá)式3.顯示局部變量的值可以使用select或print語句顯示局部變量的值。其語法格式如下:select@變量名[,...n]print@變量名兩者的區(qū)別在于,select語句以表格方式顯示一個或多個變量的值,而print語句在消息框中顯示一個變量的值。7.2.2全局變量全局變量是以“@@”開頭,由系統(tǒng)預(yù)先定義并負(fù)責(zé)維護(hù)的變量。也可以把全局變量看成是一種特殊形式的函數(shù)。全局變量不可以由用戶隨意建立和修改,其作用范圍也并不局限于某個程序,而是任何程序均可調(diào)用。常用的全局變量有30多個,通常用來存儲一些SQLServer的配置值和效能統(tǒng)計(jì)數(shù)字,用戶可以通過查詢?nèi)肿兞縼頇z測系統(tǒng)的參數(shù)值或執(zhí)行查詢命令后的狀態(tài)值。在全局變量的使用過程中要注意,全局變量是由SQLServer服務(wù)器定義的,用戶只能使用全局變量,且在引用全局變量時,必須以“@@”開頭。另外,局部變量的名稱不能與全局變量的名稱相同,否則就會在應(yīng)用程序中出錯。30min7.3程序控制語句SQLServer支持結(jié)構(gòu)化的編程方法,結(jié)構(gòu)化編程中程序流程控制的三大結(jié)構(gòu)是順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。T-SQL提供了實(shí)現(xiàn)這3種結(jié)構(gòu)的流程控制語句,使用這些流程控制語句可以控制命令的執(zhí)行順序,以便更好地組織程序。7.3.1begin…end語句begin…end語句相當(dāng)于其他語言中的復(fù)合語句,如C語言中的{}。它用于將多條T-SQL語句封裝為一個整體的語句塊,即將begin…end內(nèi)的所有T-SQL語句視為一個單元執(zhí)行。在實(shí)際應(yīng)用中,begin…end語句一般與if…else、while等語句聯(lián)用,當(dāng)判斷條件符合需要執(zhí)行兩個或多個語句時,就需要使用begin…end語句將這些語句封裝為一個語句塊。begin…end語句塊允許嵌套。7.3.2單條件分支語句if…else語句是條件判斷語句,用以實(shí)現(xiàn)選擇結(jié)構(gòu)。當(dāng)if后的條件成立時就執(zhí)行其后的T-SQL語句,條件不成立時執(zhí)行else語句后的T-SQL語句。其中,else子句是可選項(xiàng),如果沒有else子句,當(dāng)條件不成立時則執(zhí)行if語句后的其他語句。7.3.3多條件分支語句1.if多條件分支if…elseif…else語句用于多條件分支執(zhí)行。其語法格式如下:if<條件表達(dá)式>{SQL語句塊|程序塊}elseif<條件表達(dá)式>{SQL語句塊|程序塊}…else{SQL語句塊|程序塊}2.case多條件分支1)簡單case語句其語法格式如下:case<運(yùn)算式>when<運(yùn)算式>then<運(yùn)算式>...when<運(yùn)算式>then<運(yùn)算式>[else<運(yùn)算式>]End2)搜索case語句其語法格式如下:casewhen<條件表達(dá)式>then<運(yùn)算式>...when<條件表達(dá)式>then<運(yùn)算式>[else<運(yùn)算式>]End7.3.4循環(huán)語句while語句用于實(shí)現(xiàn)循環(huán)結(jié)構(gòu),其功能是在滿足循環(huán)條件的情況下,重復(fù)執(zhí)行T-SQL語句或語句塊。當(dāng)while后面的條件為真時,就重復(fù)執(zhí)行begin…end之間的語句塊。while語句塊中的continue和break是可選項(xiàng)。若有continue語句,則其功能是跳過continue后的語句,執(zhí)行下一次循環(huán)條件測試。若遇到break語句,則其功能是立即終止循環(huán),結(jié)束整個while語句的執(zhí)行,并繼續(xù)執(zhí)行while語句后的其他語句。7.3.5goto語句goto語句是轉(zhuǎn)向語句,讓程序跳轉(zhuǎn)到一個指定的標(biāo)簽處并執(zhí)行其后的代碼。goto語句和標(biāo)簽可以在程序、批處理和語句塊中的任意位置使用,也可以嵌套使用。其語法格式如下:定義標(biāo)簽label:改變執(zhí)行g(shù)otolabel參數(shù)說明:若有g(shù)oto語句指向label標(biāo)簽,則其為處理的起點(diǎn)。標(biāo)簽必須符合標(biāo)識符規(guī)則。7.3.6return語句return語句用于結(jié)束當(dāng)前程序的執(zhí)行,無條件地終止一個查詢、存儲過程或批處理,返回到上一個調(diào)用它的程序或其他程序;在括號內(nèi)可指定一個返回值。其語法格式如下:return[integer_expression]參數(shù)說明:integer_expression為返回的整型值。存儲過程可以給調(diào)用過程或應(yīng)用程序返回整型值。7.3.7waitfor語句waitfor語句用于在達(dá)到指定時間或時間間隔之前阻止執(zhí)行批處理、存儲過程或事務(wù),直到所設(shè)定的時間已到或等待了指定的時間間隔之后才繼續(xù)往下運(yùn)行。其語法格式如下:waitfordelay等待時間|time完成時間7.3.8注釋語句在T-SQL中可以使用兩類注釋符。ANSI標(biāo)準(zhǔn)的注釋符“--”用于單行注釋,/**/用于多行注釋。1.單行注釋其語法格式如下:--text_of_comment參數(shù)說明:兩個連字符(--)是SQL-92標(biāo)準(zhǔn)的注釋指示符。text_of_comment為包含注釋文本的字符串。2.多行注釋其語法格式如下:/*text_of_comment*/參數(shù)說明:text_of_comment為包含注釋文本的字符串7.3.9使用腳本和批處理1.腳本腳本是存儲在文件中的一系列SQL語句,即一系列按順序提交的批處理。使用腳本可以將創(chuàng)建和維護(hù)數(shù)據(jù)庫時的操作步驟保存為一個磁盤文件,文件的擴(kuò)展名為.sql。將T-SQL語句保存為腳本,可以建立起可再用的模塊化代碼,還可以在不同的計(jì)算機(jī)之間傳送T-SQL語句,使兩臺計(jì)算機(jī)執(zhí)行同樣的操作。2.批處理批處理是包含一個或多個T-SQL語句的組,從應(yīng)用程序一次性地發(fā)送到MicrosoftSQLServer執(zhí)行。SQLServer將批處理語句編譯成一個可執(zhí)行單元,此單元稱為執(zhí)行計(jì)劃。編譯錯誤(如語法錯誤)使執(zhí)行計(jì)劃無法編譯,從而導(dǎo)致批處理中的任何語句均無法執(zhí)行。30min7.4自定義函數(shù)用戶可以根據(jù)自己的需要自定義函數(shù)。用戶自定義函數(shù)不能用于執(zhí)行一系列改變數(shù)據(jù)庫狀態(tài)的操作,但可以像系統(tǒng)函數(shù)那樣在查詢或存儲過程等程序段中使用,也可以像存儲過程一樣通過execute命令來執(zhí)行。用戶自定義函數(shù)中存儲了一個T-SQL例程,可以返回一定的值。在SQLServer中根據(jù)函數(shù)返回值形式的不同將用戶自定義函數(shù)分為以下類型:(1)標(biāo)量函數(shù)(ScalarFunction):返回單一的數(shù)據(jù)值。(2)返回?cái)?shù)據(jù)集(Rowset)的用戶自定義函數(shù):返回一個table類型的數(shù)據(jù)集,依定義語法不同分為兩類:行數(shù)據(jù)集函數(shù)和多語句數(shù)據(jù)集函數(shù)。7.4.1創(chuàng)建自定義函數(shù)標(biāo)量函數(shù)返回單一的數(shù)據(jù)值,其類型可以是除了text、ntext、image、cursor、rowversion(timestamp)之外的所有類型。創(chuàng)建標(biāo)量函數(shù)的語法格式如下:createfunction[owner_name.]function_name([{@parameter_name[as]scalar_paramet

溫馨提示

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

評論

0/150

提交評論