Office中国论坛/Access中国论坛

标题: 请教斑竹和各位高手,如何调用sql-server上的自定义函数? [打印本页]

作者: zjxgjp    时间: 2004-10-31 18:28
标题: 请教斑竹和各位高手,如何调用sql-server上的自定义函数?
我在sql-server上定义了一个自定义函数如下:

create FUNCTION dbo.fulltype (@id int)

RETURNS nvarchar(50)

AS

BEGIN

declare @fullname nvarchar(50)

SET @fullname=''  

while @id>0

begin

  set @fullname =(select typename from type where id=@id)+case @fullname when '' then '' else [url=mailto:'_'+@fullname]'_'+@fullname[/url] end

  set @id=(select fid from type where id=@id)

end

RETURN @fullname

END

在adp中想调用,如:me.caption=currentproject.connect.execute("fulltype 82" ) 老出错"类型

不匹配",如何解决?该函数已在sql上调试过没问题.
作者: zjxgjp    时间: 2004-11-1 16:55
大家都不赐教,是否ADP中根本就不能调用sql- server上的自定义函数?
作者: hgt.net    时间: 2004-11-1 20:15
如果参数是字符串,要用单引号‘’引住,如果是数字,就不能引住。在 ADP 函数属性看看参数的顺序和数据类型。
作者: hgt    时间: 2004-11-1 20:20
怪事!我在 主页 注册 hgt  注册不了,就注册了 hgt.net  怎么跑到论坛来了?[em08]
作者: zjxgjp    时间: 2004-11-1 22:25
还是不行!
作者: lwwvb    时间: 2004-11-28 03:46
是你的函数有问题.SELECT 是返回到客户端程序的.RETURN是返回到其它调用它的函数或存储过程.你用RETURN就不对了.ADP可以使用全部的SQL 2000功能.例:CREATE  FUNCTION DBO.FUNGETABC(@X INT)AS  SELECT @X+1VBA中EBUG.PRINT  "SELECT DBO.FUNGETABC(5)"
作者: zjxgjp    时间: 2004-11-29 06:49
谢谢赐教!不过你的函数测试过没有,怎么我这边好象不行?
作者: wonken    时间: 2004-12-15 23:44
应该是 me.caption=currentproject.connection.execute("fulltype 82" )(0)




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3