程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> sql2k中新增加的Function的sqlbook 的幫助

sql2k中新增加的Function的sqlbook 的幫助

編輯:關於SqlServer
從今天起 豆腐 將陸續的從 SQL2k 的幫助中摘取一些幫助 放到 網上 給大家看看
sql2k 真的是增加了很多的功能!有條件的話,大家盡量的 提前升級到sql2k
http://www.ASP888.Net 豆腐技術站
*/
CREATE FUNCTION
創建用戶定義函數,它是返回值的已保存的 Transact-SQL 例程。用戶定義函數不能用於執行一組修改全局數據庫狀態的操作。與系統函數一樣,用戶定義函數可以從查詢中喚醒調用。也可以像存儲過程一樣,通過 EXECUTE 語句執行。

用戶定義函數用 ALTER FUNCTION 修改,用 DROP FUNCTION 除去。

語法
標量函數

CREATE FUNCTION [ owner_name.] function_name
( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] )

RETURNS scalar_return_data_type

[ WITH < function_option> [ [,] ...n] ]

[ AS ]

BEGIN
function_body
RETURN scalar_expression
END

內嵌表值函數

CREATE FUNCTION [ owner_name.] function_name
( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] )

RETURNS TABLE

[ WITH < function_option > [ [,] ...n ] ]

[ AS ]

RETURN [ ( ] select-stmt [ ) ]

多語句表值函數

CREATE FUNCTION [ owner_name.] function_name
( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] )

RETURNS @return_variable TABLE < table_type_definition >

[ WITH < function_option > [ [,] ...n ] ]

[ AS ]

BEGIN
function_body
RETURN
END

< function_option > ::=
{ ENCRYPTION | SCHEMABINDING }

< table_type_definition > ::=
( { column_definition | table_constraint } [ ,...n ] )


參數
owner_name

擁有該用戶定義函數的用戶 ID 的名稱。owner_name 必須是現有的用戶 ID。

function_name

用戶定義函數的名稱。函數名稱必須符合標識符的規則,對其所有者來說,該名稱在數據庫中必須是唯一的。

@parameter_name

用戶定義函數的參數。CREATE FUNCTION 語句中可以聲明一個或多個參數。函數最多可以有 1,024 個參數。函數執行時每個已聲明參數的值必須由用戶指定,除非該參數的默認值已經定義。 如果函數的參數有默認值,在調用該函數時必須指定"default"關鍵字才能獲得默認值。這種行為不同於存儲過程中有默認值的參數,在存儲過程中省略參數也意味著使用默認值。

使用 @ 符號作為第一個字符來指定參數名稱。參數名稱必須符合標識符的規則。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved