版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
工作任務(wù)1流程控制語(yǔ)句工作任務(wù)2函數(shù)情境總結(jié)
練習(xí)題
Transact-SQL(T-SQL)提供稱為控制流語(yǔ)言的特殊關(guān)鍵字,用于控制Transact-SQL語(yǔ)句、語(yǔ)句塊和存儲(chǔ)過程的執(zhí)行流。這些關(guān)鍵字可用于臨時(shí)Transact-SQL語(yǔ)句、批處理和存儲(chǔ)過程中。
若不使用控制流語(yǔ)言,則各Transact-SQL語(yǔ)句按其出現(xiàn)的順序分別執(zhí)行??刂屏髡Z(yǔ)言使用與程序設(shè)計(jì)相似的構(gòu)造使語(yǔ)句得以互相連接、關(guān)聯(lián)和相互依存。工作任務(wù)1流程控制語(yǔ)句
1.標(biāo)識(shí)符
數(shù)據(jù)庫(kù)對(duì)象的名稱即其標(biāo)識(shí)符。
2.注釋
3.批處理
批處理是由一個(gè)或多個(gè)T-SQL語(yǔ)句組成的,應(yīng)用程序?qū)⑦@些語(yǔ)句作為一個(gè)單元一次性地提交給SQLServer,并由SQLServer編譯成一個(gè)執(zhí)行計(jì)劃,然后作為一個(gè)整體來(lái)執(zhí)行。
4.?dāng)?shù)據(jù)類型
5.常量
6.變量
變量是指在程序的執(zhí)行過程中可以改變的量,它可以保存特定類型的值。
例6-1:將成績(jī)信息表中學(xué)號(hào)為“200606001”的學(xué)生的分?jǐn)?shù)賦值給變量@fenshu,并將該變量的值顯示在結(jié)果窗口中。
執(zhí)行如下命令,運(yùn)行結(jié)果如圖6-1所示。圖6-1例6-1運(yùn)行結(jié)果
7.運(yùn)算符和表達(dá)式
運(yùn)算符是一種符號(hào),用來(lái)指定要在一個(gè)或者多個(gè)表達(dá)式中執(zhí)行的操作。
1)算術(shù)運(yùn)算符
2)賦值運(yùn)算符
3)字符串連接運(yùn)算符
4)比較運(yùn)算符
5)邏輯運(yùn)算符子任務(wù)1順序結(jié)構(gòu)
順序結(jié)構(gòu)控制語(yǔ)句包括BEGIN…END語(yǔ)句塊定義語(yǔ)句、PRINT返回客戶端消息語(yǔ)句、WAITFOR等待語(yǔ)句和RETURN返回語(yǔ)句。本子工作任務(wù)介紹這四種語(yǔ)句在順序結(jié)構(gòu)中的應(yīng)用。
1.定義語(yǔ)句塊
BEGIN…END用來(lái)表示一個(gè)語(yǔ)句塊,凡是在BEGIN與END之間的程序都屬于同一個(gè)流程控制,通常都是與IF…ELSE或WHILE等一起使用的。
2.返回客戶端消息語(yǔ)句
PRINT語(yǔ)句的功能是將用戶定義的消息返回客戶端。
3.等待語(yǔ)句
WAITFOR語(yǔ)句是等待語(yǔ)句,該語(yǔ)句可以指定它以后的語(yǔ)句在某個(gè)時(shí)間間隔之后執(zhí)行,或未來(lái)的某一時(shí)間執(zhí)行。語(yǔ)法如下:
WAITFOR{DELAY‘time’|TIME‘time’}
參數(shù)含義:
DELAY‘time’是指定SQLServer等待的時(shí)間間隔,最長(zhǎng)可達(dá)24小時(shí)。
TIME‘time’是指定SQLServer等待到某一時(shí)刻。
4.返回語(yǔ)句
【任務(wù)1】WAITFOR語(yǔ)句的應(yīng)用:使用WAITFORTIME語(yǔ)句,以便在晚上10:30執(zhí)行存儲(chǔ)過程update_all_stats。
操作步驟如下:
①在查詢窗口中輸入以下命令文本:
BEGIN
WAITFORTIME‘22:30’
EXECUTEupdate_all_stats
END
②單擊【執(zhí)行】按鈕即可。
【任務(wù)2】RETURN語(yǔ)句的應(yīng)用:顯示如果在執(zhí)行findjobs時(shí)沒有給出用戶名作為參數(shù),RETURN則將一條消息發(fā)送到用戶的屏幕上后從過程中退出;如果給出用戶名,將從適當(dāng)?shù)南到y(tǒng)表中檢索由該用戶在當(dāng)前數(shù)據(jù)庫(kù)內(nèi)創(chuàng)建的所有對(duì)象名。子任務(wù)2分支結(jié)構(gòu)
分支結(jié)構(gòu)控制語(yǔ)句包括IF條件語(yǔ)句、CASE判斷語(yǔ)句和GOTO無(wú)條件跳轉(zhuǎn)語(yǔ)句。本子任務(wù)介紹這三種語(yǔ)句在分支結(jié)構(gòu)中的應(yīng)用。1.?IF條件
2.?CASE判斷語(yǔ)句
3.無(wú)條件轉(zhuǎn)移語(yǔ)句
【任務(wù)1】IF語(yǔ)句的應(yīng)用:刪除滿足條件的學(xué)生記錄。
操作步驟如下:
①在查詢窗口中輸入以下命令文本:
USE班級(jí)管理系統(tǒng)
GO
IFEXISTS
(SELECT*FROM學(xué)生信息表WHERE學(xué)號(hào)='2007110102')
BEGIN
DELETE學(xué)生信息表
WHERE學(xué)號(hào)=‘2007110102’
PRINT‘學(xué)號(hào)=2007110102已被刪除’
END
②單擊【執(zhí)行】按鈕,結(jié)果如圖6-2所示。圖6-2子任務(wù)1的執(zhí)行結(jié)果
【任務(wù)2】IF語(yǔ)句的應(yīng)用:在屏幕上顯示成績(jī)信息表中的成績(jī)及格情況。
【任務(wù)3】CASE語(yǔ)句的應(yīng)用:在學(xué)生信息表中利用學(xué)號(hào)進(jìn)行系別說(shuō)明并排序。
①在查詢窗口中輸入以下命令文本:
Use班級(jí)管理系統(tǒng)
select姓名,系別=
casesubstring(學(xué)號(hào),5,1)
when‘1’then‘會(huì)計(jì)系’
when‘3’then‘計(jì)算機(jī)系’
when‘4’then‘機(jī)電系’
end
from學(xué)生信息表
orderby學(xué)號(hào)
②單擊【執(zhí)行】按鈕,得到結(jié)果如圖6-3所示。圖6-3任務(wù)3執(zhí)行結(jié)果
【任務(wù)4】CASE語(yǔ)句的應(yīng)用:根據(jù)“學(xué)生信息表”中的學(xué)生出生日期范圍來(lái)評(píng)定學(xué)生受教育的早晚。
單擊【執(zhí)行】按鈕,得到結(jié)果如圖6-4所示。圖6-4任務(wù)4執(zhí)行結(jié)果
【任務(wù)5】GOTO語(yǔ)句的應(yīng)用:利用GOTO語(yǔ)句計(jì)算0~100之間所有數(shù)的和。子任務(wù)3循環(huán)結(jié)構(gòu)
循環(huán)結(jié)構(gòu)控制語(yǔ)句包括WHILE循環(huán)語(yǔ)句、BREAK結(jié)束循環(huán)語(yǔ)句和CONTINUE跳到下一次循環(huán)語(yǔ)句。本子任務(wù)介紹這三種語(yǔ)句在循環(huán)結(jié)構(gòu)中的應(yīng)用。
【任務(wù)1】WHILE語(yǔ)句的應(yīng)用:計(jì)算1~100之間所有偶數(shù)之和,但是如果和大于2000,則立刻跳出循環(huán)并輸出結(jié)果。函數(shù)對(duì)于任何程序設(shè)計(jì)語(yǔ)言來(lái)說(shuō)都是非常關(guān)鍵的組成部分。SQLServer2008不僅提供了系統(tǒng)函數(shù),而且允許用戶創(chuàng)建自定義的函數(shù)。系統(tǒng)函數(shù)使得用戶可以訪問SQLServer2008系統(tǒng)表中的信息,而用戶自定義函數(shù)是接受參數(shù)、執(zhí)行操作并將操作結(jié)果以值的形式返回的子程序。本工作任務(wù)是對(duì)T-SQL語(yǔ)言中的函數(shù)的應(yīng)用。工作任務(wù)2函數(shù)子任務(wù)1系統(tǒng)函數(shù)
SQLServer2008提供的函數(shù)分為以下幾類:字符串函數(shù)、日期函數(shù)、系統(tǒng)函數(shù)、聚合函數(shù)、數(shù)學(xué)函數(shù)、元數(shù)據(jù)函數(shù)、安全函數(shù)、行集函數(shù)、游標(biāo)函數(shù)、配置函數(shù)、文本和圖像函數(shù)。本工作任務(wù)是對(duì)T-SQL語(yǔ)言提供的系統(tǒng)函數(shù)的應(yīng)用。
1.行集函數(shù)
行集函數(shù)可以在T-SQL語(yǔ)句中當(dāng)作表引用來(lái)返回對(duì)象。
2.聚合函數(shù)
聚合函數(shù)用于對(duì)一組值進(jìn)行計(jì)算并返回一個(gè)單一的值。
3.?dāng)?shù)學(xué)函數(shù)
算術(shù)函數(shù)(例如ABS、CEILING、DEGREES、FLOOR、POWER、RADIANS和SIGN)返回與輸入值具有相同數(shù)據(jù)類型的值。
4.字符串函數(shù)
字符串函數(shù)對(duì)字符串進(jìn)行操作,以下列出SQLServer的字符串函數(shù)及簡(jiǎn)要說(shuō)明和示例。
5.日期函數(shù)
日期和時(shí)間函數(shù)對(duì)日期和時(shí)間輸入值執(zhí)行操作,并返回一個(gè)字符串、數(shù)字值或日期和時(shí)間值。
6.元數(shù)據(jù)函數(shù)
元數(shù)據(jù)函數(shù)用于返回有關(guān)數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)對(duì)象的信息。
7.系統(tǒng)函數(shù)
系統(tǒng)函數(shù)用于獲得有關(guān)服務(wù)器、用戶、數(shù)據(jù)庫(kù)狀態(tài)等系統(tǒng)信息。
【任務(wù)1】AVG函數(shù)的應(yīng)用:統(tǒng)計(jì)所有學(xué)生成績(jī)的平均值。
操作步驟如下:
①在查詢窗口中輸入以下命令文本:
USE班級(jí)管理系統(tǒng)
SELECTAVG(成績(jī))as平均成績(jī)
FROM成績(jī)信息表
GO
②單擊【執(zhí)行】按鈕。
【任務(wù)2】ABS函數(shù)的應(yīng)用:計(jì)算“-8.5”的絕對(duì)值。
【任務(wù)3】LEFT函數(shù)的應(yīng)用:取“CHINA”字符串的左邊兩位字符。
【任務(wù)4】REPLACE函數(shù)的應(yīng)用:字符串替換。
【任務(wù)5】DATEDIFF函數(shù)的應(yīng)用:計(jì)算“出生日期”和當(dāng)前日期之間經(jīng)過了多少天。
【任務(wù)6】COL_LENGTH函數(shù)的應(yīng)用:返回“學(xué)生信息表”中“學(xué)號(hào)”列的定義長(zhǎng)度。
【任務(wù)7】IDENTITY函數(shù)的應(yīng)用:將“學(xué)生信息表”中學(xué)號(hào)的前四位是“2008”的所有行都插入到名為“學(xué)生2008”的新表中。使用IDENTITY函數(shù)在“學(xué)生”表中創(chuàng)建“序號(hào)”標(biāo)識(shí)列,其值從100開始。子任務(wù)2自定義函數(shù)
SQLServer2008不僅提供了系統(tǒng)函數(shù),而且允許用戶創(chuàng)建自定義的函數(shù)。用戶自定義函數(shù)可以接受參數(shù)、執(zhí)行操作并將操作結(jié)果以值的形式返回到子程序。本子任務(wù)是對(duì)自定義函數(shù)的應(yīng)用與管理。
1.用戶自定義函數(shù)概述
用戶在編寫程序的過程中除了可以調(diào)用系統(tǒng)函數(shù)外,還可以根據(jù)自己的需要自定義函數(shù)。
2.用戶自定義函數(shù)的創(chuàng)建
1)創(chuàng)建標(biāo)量函數(shù)
標(biāo)量函數(shù)往往根據(jù)輸入?yún)?shù)值的不同來(lái)獲得不同的函數(shù)值,在標(biāo)量函數(shù)中可以使用多個(gè)輸入?yún)?shù),而函數(shù)的返回值卻只能有一個(gè)。
2)內(nèi)嵌表值函數(shù)
該函數(shù)返回的都是一個(gè)表(table),而不是一個(gè)標(biāo)量數(shù)據(jù)。返回表值函數(shù)可以提供參數(shù)化視圖功能,可用在T-SQL查詢中允許有表或視圖表達(dá)式的地方。
3)多語(yǔ)句表值函數(shù)
多語(yǔ)句表值函數(shù)也是返回表的函數(shù),內(nèi)嵌表值函數(shù)返回的是單個(gè)SELECT語(yǔ)句的結(jié)果集。
3.用戶自定義函數(shù)調(diào)用
函數(shù)創(chuàng)建成功后,就可以調(diào)用函數(shù)了。
4.修改或刪除用戶定義函數(shù)的語(yǔ)句
【任務(wù)1】
自定義函數(shù)oldyear的應(yīng)用:在“班級(jí)管理系統(tǒng)”數(shù)據(jù)庫(kù)中,創(chuàng)建名為“oldyear”的函數(shù),用于計(jì)算學(xué)生的年齡。
【任務(wù)2】
自定義標(biāo)量函數(shù)max2的應(yīng)用:創(chuàng)建一個(gè)標(biāo)量函數(shù),該函數(shù)返回兩個(gè)參數(shù)中的最大值。
【任務(wù)3】
內(nèi)嵌表值函數(shù)“stuxi”的應(yīng)用:創(chuàng)建一個(gè)名為“stuxi”的函數(shù)用于返回學(xué)生信息表中屬于同一個(gè)系的學(xué)生的部分信息。
【任務(wù)4】多語(yǔ)句表值函數(shù)f_stu的應(yīng)用:在“班級(jí)管理系統(tǒng)”數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)多語(yǔ)句表值自定義函數(shù),它可以返回學(xué)生信息表的姓名或系別與姓名的組合(這個(gè)取決于用戶提供的參數(shù))。
【任務(wù)5】
調(diào)用標(biāo)量函數(shù)max2:使用EXEC語(yǔ)句調(diào)用max2函數(shù),參數(shù)的標(biāo)識(shí)次序與函數(shù)定義中的參數(shù)標(biāo)識(shí)次序不同。
【任務(wù)6】
調(diào)用內(nèi)聯(lián)表值函數(shù)stuxi:調(diào)用stuxi,返回某一院系的學(xué)生情況。本情境主要介紹T-SQL的語(yǔ)言基礎(chǔ)。通過示例介紹了流程控制語(yǔ)句和函數(shù)的用法;包括全局變量、用戶自定義變量、各種控制語(yǔ)句、系統(tǒng)函數(shù)及用戶自定義函數(shù)的用法。情境總結(jié)填空題
1.規(guī)則是一種約束,用于執(zhí)行一些與CHECK約束相同的功能。一個(gè)列只能應(yīng)用一個(gè)
,但可以應(yīng)用多個(gè)
。
2.在學(xué)生
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度美容院連鎖加盟區(qū)域代理權(quán)及市場(chǎng)獨(dú)占協(xié)議
- 2025年度企業(yè)培訓(xùn)項(xiàng)目財(cái)務(wù)結(jié)算合同范本4篇
- 二零二五年度寵物貓專業(yè)寄養(yǎng)與健康管理合同3篇
- 2025年度民間借貸資產(chǎn)重組委托管理合同
- 二零二五年度儲(chǔ)油罐拆除工程安全風(fēng)險(xiǎn)評(píng)估與應(yīng)急預(yù)案演練合同4篇
- 二零二五年度二手房買賣合同交易稅費(fèi)分擔(dān)協(xié)議3篇
- 廣東郵政速遞服務(wù)合同范本(2025年)3篇
- 二手房二次銷售協(xié)議范本(2024版)版B版
- 二零二五年度工業(yè)原材料采購(gòu)代理服務(wù)合同3篇
- 二零二五版工傷賠償協(xié)議范本參考3篇
- 2024生態(tài)環(huán)境相關(guān)法律法規(guī)考試試題
- 有砟軌道施工工藝課件
- 兩辦意見八硬措施煤礦安全生產(chǎn)條例宣貫學(xué)習(xí)課件
- 40篇短文搞定高中英語(yǔ)3500單詞
- 人教版高中數(shù)學(xué)必修二《第九章 統(tǒng)計(jì)》同步練習(xí)及答案解析
- 兒科護(hù)理安全警示教育課件
- 三年級(jí)下冊(cè)口算天天100題
- 國(guó)家中英文名稱及代碼縮寫(三位)
- 人員密集場(chǎng)所消防安全培訓(xùn)
- 液晶高壓芯片去保護(hù)方法
- 拜太歲科儀文檔
評(píng)論
0/150
提交評(píng)論