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

伊春文化艺术

伊春文化艺术

2016-01-29 16:10

sql2k中新增加的Function的sqlbook 的帮助,sql2k中新增加的Function的sqlbook 的帮助
  /*
从今天起 豆腐 将陆续的从 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"关键字才能获得默认值。这种行为不同于存储过程中有默认值的参数,在存储过程中省略参数也意味着使用默认值。

使用 @ 符号作为第一个字符来指定参数名称。参数名称必须符合标识符的规则。每个函数的参数仅用于该函数本身;相同的参数名称可以用在其它函数中。参数只能代替常量;而不能用于代替表名、列名或其它数据库对象的名称。

scalar_parameter_data_type

参数的数据类型。所有标量数据类型(包括 bigint 和 sql_variant)都可用作用户定义函数的参数。不支持 timestamp 数据类型和用户定义数据类型。不能指定非标量类型(例如 cursor 和 table)。

scalar_return_data_type

是标量用户定义函数的返回值。scalar_return_data_type 可以是 SQL Server 支持的任何标量数据类型(text、ntext、image 和 timestamp 除外)。

scalar_expression

指定标量函数返回的标量值。

TABLE

指定表值函数的返回值为表。

在内嵌表值函数中,通过单个 SELECT 语句定义 TABLE 返回值。内嵌函数没有相关联的返回变量。

在多语句表值函数中,@return_variable 是 TABLE 变量,用于存储和累积应作为函数值返回的行。

function_body

指定一系列 Transact-SQL 语句定义函数的值,这些语句合在一起不会产生副作用。function_body 只用于标量函数和多语句表值函数。

在标量函数中,function_body 是一系列合起来求得标量值的 Transact-SQL 语句。

在多语句表值函数中,function_body 是一系列填充表返回变量的 Transact-SQL 语句。

select-stmt

是定义内嵌表值函数返回值的单个 SELECT 语句。

ENCRYPTION

指出 SQL Server 加密包含 CREATE FUNCTION 语句文本的系统表列。使用 ENCRYPTION 可以避免将函数作为 SQL Server 复制的一部分发布。

SCHEMABINDING

指定将函数绑定到它所引用的数据库对象。如果函数是用 SCHEMABINDING 选项创建的,则不能更改(使用 ALTER 语句)或除去(使用 DROP 语句)该函数引用的数据库对象。

函数与其所引用对象的绑定关系只有在发生以下两种情况之一时才被解除:

除去了函数。


在未指定 SCHEMABINDING 选项的情况下更改了函数(使用 ALTER 语句)。
只有在满足以下条件时,函数才能绑定到架构:
展开更多 50%)
分享

猜你喜欢

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

SQLServer
sql2k中新增加的Function的sqlbook 的帮助

sql2k增加的Function的sqlbook的帮助

SQLServer
sql2k增加的Function的sqlbook的帮助

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

在SQL2k降序索引上使用中bug

SQLServer
在SQL2k降序索引上使用中bug

用IE和SQL2k开发一个XML聊天程序

Web开发
用IE和SQL2k开发一个XML聊天程序

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

asp在SQL SER2k中新建帐号和给帐号权限的实现

ASP
asp在SQL SER2k中新建帐号和给帐号权限的实现

Excel 2007中新增的多重条件函数

电脑入门
Excel 2007中新增的多重条件函数

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

免费把QQ炫铃设为本机QQ的系统提示音

免费把QQ炫铃设为本机QQ的系统提示音

Photoshop教程:手绘金框木柄放大镜

Photoshop教程:手绘金框木柄放大镜
下拉加载更多内容 ↓