sql用户定义函数
⑴ sql中创建一个用户自定义函数
CREATE
FUNCTION
DBO.tFProctsHS
(
@name
VARCHAR(10))
RETURNS
INT
--这个根据价格的类型自己修改
AS
begin
DECLARE
@jiage
INT;
select
@jiage=
jiage
from
商品表
where
name=
@name
RETURN
(@jiage)
end
--ceshi
select
DBO.tFProctsHS
('记事本')
⑵ sql中如何查看和修改用户自定义函数的定义
创建一个用户自定义函数Goodsorder,以货品名称为参数,返回该货品的订单记录。
直接分别试语句和函数注意你修改过的函数
与
有数据的表
是否在一个数据库
⑶ 如何:创建和运行 CLR SQL Server 用户定义的函数
部署成功后,可调用并执行用户定义的函数。注意
在默认情况下,Microsoft
SQL
Server
中关闭了
公共语言运行库
(CLR)
集成功能。必须启用该功能才能使用
SQL
Server
项目项。若要启用
CLR
集成,请使用
sp_configure
存储过程
的“启用
clr”选项。有关更多信息,请参见启用
CLR
集成。注意显示的对话框和菜单命令可能会与帮助中的描述不同,具体取决于您现用的设置或版本。若要更改设置,请在“工具”菜单上选择“导入和导出设置”。有关更多信息,请参见
Visual
Studio
设置。
创建用户定义的
SQL
Server
函数
使用Visual
Studio
建立和部署此函数
C++
示例在编译时必须使用
/clr:safe
编译器
选项。
对于Visual
Basic
和
Visual
C#,在“解决方案
资源管理器
”中,打开“TestScripts”文件夹,然后双击“Test.sql”文件,以打开它进行编辑。添加执行您的
用户定义函数
的代码。请参见下面的第二个示例。对于Visual
C++,在“解决方案资源管理器”中双击“debug.sql”文件,以打开它进行编辑。添加执行您的用户定义函数的代码。请参见下面的第二个示例。将用户定义函数部署到
SQL
Server。有关更多信息,请参见如何:将
SQL
Server
项目项部署到
SQL
Server
中。按F5
通过在
SQL
Server
上执行用户定义的函数来对其进行调试。下面的代码示例创建用户定义的将价格作为参数的
标量函数
addTax,添加
销售税
并返回价格和销售税的加和。创建该函数后,将其部署到
SQL
Server。有关更多信息,请参见如何:将
SQL
Server
项目项部署到
SQL
Server
中Visual
Basic
复制代码
Imports
System.Data.SqlTypes
Imports
Microsoft.
SqlServer
.ServerPartial
Public
Class
UserDefinedFunctions
Public
Const
SALES_TAX
As
Double
=
0.086
_
Public
Shared
Function
addTax(ByVal
originalAmount
As
SqlDouble)
As
SqlDouble
Dim
taxAmount
As
SqlDouble
=
originalAmount
*
SALES_TAX
Return
originalAmount
+
taxAmount
End
FunctionEnd
ClassC#
复制代码
using
System.Data.SqlTypes;
using
Microsoft.SqlServer.Server;public
partial
class
UserDefinedFunctions{public
const
double
SALES_TAX
=
.086;
[SqlFunction()]
public
static
SqlDouble
addTax(SqlDouble
originalAmount){SqlDouble
taxAmount
=
originalAmount
*
SALES_TAX;
return
originalAmount
+
taxAmount;}}C++
复制代码
#include
"stdafx.h"#using
#using
#using
using
namespace
System;
using
namespace
System::Data;
using
namespace
System::Data::Sql;
using
namespace
System::Data::SqlTypes;
using
namespace
Microsoft::SqlServer::Server;//
In
order
to
debug
your
Aggregate,
add
the
following
to
your
debug.sql
file:////
SELECT
dbo.addTax(10)
//public
ref
class
UserDefinedFunctions{public:static
initonly
double
SALES_TAX
=
0.086;
[SqlFunction()]
static
SqlDouble
AddTax(SqlDouble
originalAmount){SqlDouble
taxAmount
=
originalAmount
*
SALES_TAX;
return
originalAmount
+
taxAmount;}};向您的项目中
TestScripts
文件夹中的
Test.sql(在
Visual
C++
中为
debug.sql)文件,添加用于测试用户定义函数的代码。例如,若要测试此函数,请使用查询,如“SELECT
dbo.addTax(10)”。您应见到返回的值“10.86”。
复制代码
⑷ sql 用户自定义函数
CREATE
FUNCTION F_BOM(@MD003 VARCHAR(20),@MD006 INT) --创建一个函数
returns
@t table(MD003 VARCHAR(20),MD006 INT) ---返回一个表,字段是自己定义的
begin
insert into @t(MD003,MD006) select MD003,MD006*@MD006 FROM BOMMD WHERE MD001=@MD003 AND MD014='Y' -----开始函数,向自己定义的表中插入数据
while @@rowcount<>0 ----如果上个语句插入了,开始下面的
insert into @t(MD003,MD006)
select
A.MD003,A.MD006*B.MD006
from
BOMMD A,@t B
where
A.MD014='Y' AND
A.MD001=B.MD003 collate Chinese_PRC_CI_AI_WS
and
not exists(select 1 from @t where MD003=A.MD003 collate Chinese_PRC_CI_AI_WS)
----根据where条件再次插入数据
⑸ 如何在sql中定义一个函数,函数功能是传入一个字符串,返回这个字符串中的数
1通过VisualStudio2008新建一个SQLServer项目。2,配置连接的数据库点击上一步确定后,可以通过添加新引用来添加一个数据库连接(只适用MS SQL Server 2005或以上版本,再次提醒哦),添加以后选择其中一个数据库点击确。3,添加一个自定义函数。然后编写自定义函数的类即可。
用户自定义函数是指如果要在公式或计算中使用特别复杂的计算,而工作表函数又无法满足需要,则需要创建用户自定义函数。
⑹ SQL_用户定义函数
你需要返回一个TABLE
CREATEFUNCTIONSP_CALC
(@deptVARCHAR(50)---部门编号
)
RETURNS@tTABLE(salAvgfloat,salSumfloat)
AS
BEGIN
计算过程
INSERT@t(salAvg,salSum)VALUES(你计算的值)
RETURN
END
GO
⑺ SQL创建用户自定义函数
楼主我只写了其中一个..基本方法都如此,希望对您有帮助,代码如下
ALTER FUNCTION [dbo].[sum]
(
@class varchar(100), --所选课程
@username varchar(20) --学生姓名
)
RETURNS int
AS
BEGIN
DECLARE @reun int
SELECT SUN(@class) FROM YOURTABLE WHERE USERNAME=@username
RETURN @reun
END
⑻ SQL中创建一个用户自定义函数
CREATE FUNCTION DBO.tFProctsHS ( @name VARCHAR(10))
RETURNS INT --这个根据价格的类型自己修改
AS
begin
DECLARE @jiage INT;
select @jiage= jiage from 商品表 where name= @name
RETURN (@jiage)
end
--ceshi
select DBO.tFProctsHS ('记事本')
⑼ SQL创建用户自定义函数
楼主我只写了其中一个..基本方法都如此,希望对您有帮助,代码如下
ALTER
FUNCTION
[dbo].[sum]
(
@class
varchar(100),
--所选课程
@username
varchar(20)
--学生姓名
)
RETURNS
int
AS
BEGIN
DECLARE
@reun
int
SELECT
SUN(@class)
FROM
YOURTABLE
WHERE
USERNAME=@username
RETURN
@reun
END
⑽ SQL有哪几种用户自定义函数,区别是什么
用户定义的函数有标量函数和表值函数两种,其中表值函数又分为内联表值函数和多语句表值函数。