版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
用戶定義函數(shù)標(biāo)量函數(shù)往往根據(jù)輸入?yún)?shù)值的不同來獲得不同的函數(shù)值,在標(biāo)量函數(shù)中可以使用多個(gè)輸入?yún)?shù),而函數(shù)的返回值卻只能有一個(gè)。當(dāng)需要在代碼中的多個(gè)位置進(jìn)行相同的數(shù)學(xué)計(jì)算時(shí),標(biāo)量函數(shù)十分有用。標(biāo)量函數(shù)的函數(shù)體可包括一條或多條T-SQL語句。這些T-SQL語句以BEGIN開始,以EDN結(jié)束;用RETURNS子句定義該函數(shù)返回值的數(shù)據(jù)類型,用RETURN語句返回該函數(shù)的值。
1.創(chuàng)建標(biāo)量函數(shù)的基本語法
CREATEFUNCRIONfunction_name ([{@parameter_namescalar_parameter_type[=dafault]}[,...n]]) RETURNSscalar_return_data_type [WITHENCRYPTION] [AS] BEGIN Function_body RETURNscalar_expression END
其中:
function_name為函數(shù)的名稱。
@parameter_name為輸入?yún)?shù)名。輸入?yún)?shù)的名必須以@作為開頭。
scalar_parameter_type為輸入?yún)?shù)的類型。
dafault為所對(duì)應(yīng)的輸入?yún)?shù)的默認(rèn)值。
RETURNSscalar_return_data_type子句定義了函數(shù)返回值的類型,該類型不能是text、ntext等類型。
WITH子句指出了創(chuàng)建函數(shù)的選項(xiàng)。如果指定了ENCRYPTION參數(shù),則創(chuàng)建的函數(shù)是被加密的,函數(shù)定義的文本將以加密的形式存儲(chǔ)在syscomments表中,任何人都不能查看到該函數(shù)的定義,包括函數(shù)的創(chuàng)建者和系統(tǒng)管理員。
BEGIN與END之間定義了函數(shù)體,該函數(shù)體中必須包括一條RETURN語句,用于返回一個(gè)值。
2.標(biāo)量函數(shù)的創(chuàng)建及應(yīng)用 在程序中應(yīng)用標(biāo)量函數(shù)時(shí),通過輸入?yún)?shù)將數(shù)據(jù)傳遞給函數(shù)體。在創(chuàng)建標(biāo)量函數(shù)時(shí),輸入?yún)?shù)必須位于CREATEFUNCTION與RETURNS子句之間定義,并且要用括號(hào)括起來。每個(gè)輸入?yún)?shù)都要指定參數(shù)名和數(shù)據(jù)類型,參數(shù)名必須以@符號(hào)為前綴,可以為參數(shù)指定默認(rèn)值。各個(gè)參數(shù)定義之間應(yīng)用逗號(hào)隔開。
【例1】創(chuàng)建一個(gè)統(tǒng)計(jì)某本書的被借次數(shù)函數(shù),并在創(chuàng)建成功后查看“王漢生”編寫的“大學(xué)物理”的被借次數(shù)。
(1)創(chuàng)建“被借次數(shù)”函數(shù)。在該函數(shù)中創(chuàng)建輸入?yún)?shù)@圖書名稱,@作者,以便查詢不同圖書的被借次數(shù)。
CREATEFUNCTION被借次數(shù)
(@圖書名稱varchar(40)=‘?dāng)?shù)字電路’,@作者varchar(10)=‘李大友’) RETURNSint BEGIN DECLARE@借書次數(shù)int SELECT@借書次數(shù)=count(*)
FROM租借信息JOIN圖書信息ON租借信息.圖書編號(hào)=圖書信息.圖書編號(hào)
WHERE圖書名稱=@圖書名稱and作者like'%'+@作者+'%' RETURN@借書次數(shù)
END (2)應(yīng)用標(biāo)量函數(shù)。當(dāng)調(diào)用標(biāo)量值函數(shù)時(shí),至少應(yīng)使用函數(shù)的兩部分名稱,即使是所有者本人也必須如此。 語法形式為
[database_name.]owner_name.function_name([argument_expr][,...n])
其中:
database_name為函數(shù)所在數(shù)據(jù)庫的名稱。
owner_name為函數(shù)所有者的名稱。
argument_expr為參數(shù)傳值的變量表達(dá)式。如果函數(shù)的參數(shù)有默認(rèn)值,則在調(diào)用該函數(shù)時(shí)必須指定"default"關(guān)鍵字才能獲得默認(rèn)值。 使用“被借次數(shù)”函數(shù),查詢“王漢生”所編的“大學(xué)物理”的被借次數(shù)時(shí)應(yīng)寫成:
SELECTdbo.被借次數(shù)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026新疆生產(chǎn)建設(shè)兵團(tuán)文化旅游投資集團(tuán)有限公司招(競(jìng))聘13人備考題庫附參考答案詳解(黃金題型)
- 2025年上海商學(xué)院單招職業(yè)技能考試題庫附答案解析
- 2025年上海工商職業(yè)技術(shù)學(xué)院馬克思主義基本原理概論期末考試模擬題及答案解析(必刷)
- 2025年南皮縣招教考試備考題庫附答案解析
- 2025年江蘇商貿(mào)職業(yè)學(xué)院馬克思主義基本原理概論期末考試模擬題附答案解析(必刷)
- 2025年尉氏縣幼兒園教師招教考試備考題庫帶答案解析(奪冠)
- 2025年荔浦縣招教考試備考題庫含答案解析(必刷)
- 2025年廣州市公安管理干部學(xué)院馬克思主義基本原理概論期末考試模擬題帶答案解析
- 2024年重慶數(shù)字產(chǎn)業(yè)職業(yè)技術(shù)學(xué)院馬克思主義基本原理概論期末考試題帶答案解析(必刷)
- 2024年淮陰工學(xué)院馬克思主義基本原理概論期末考試題及答案解析(奪冠)
- 2025至2030中國生物識(shí)別和身份行業(yè)發(fā)展趨勢(shì)分析與未來投資戰(zhàn)略咨詢研究報(bào)告
- 民航概論教學(xué)課件
- 報(bào)社實(shí)習(xí)生管理暫行辦法
- DGTJ08-2328-2020 建筑風(fēng)環(huán)境氣象參數(shù)標(biāo)準(zhǔn)
- 豬場(chǎng)作業(yè)安全培訓(xùn)課件
- 能源與動(dòng)力工程專業(yè)培養(yǎng)目標(biāo)合理性評(píng)價(jià)分析報(bào)告
- 兒童糖尿病酮癥酸中毒診療指南(2024年)解讀課件
- 2025年水晶手鏈?zhǔn)袌?chǎng)需求分析
- 幕墻玻璃板塊平整度檢查
- 人民幣銀行結(jié)算賬戶工作指引
- 卵巢畸胎瘤護(hù)理查房
評(píng)論
0/150
提交評(píng)論