sql2005自定义函数中不允许执行拼接的SQL语句,是否可以创建clr 函数传入sql 并返回string?
--执行如下函数时,会提示 只有函数和扩展存储过程才能从函数内部执行。
CREATE function [dbo].[f_get_yzmc](@zdy nvarchar(2000),@yzid BIGINT)
returns VARCHAR(2000)
as
begin
declare @yzmc VARCHAR(2000) , @sql nVARCHAR(4000)
SET @sql=N'select @yzmc=('+@zdy+') from v_ys t2 where t2.id=@yzid'
EXEC sp_executesql @stmt = @sql,@params = N'@yzmc VARCHAR(2000) out,@yzid bigint ', @yzmc=@yzmc,@yzid=@yzid
return @yzmc
end
sql2005自定义函数中不允许执行拼接的SQL语句,是否可以创建clr 函数传入sql 并返回string?
如果可以,请给个例子,谢谢!