从函数执行存储过程
|
我知道这已经被要求死了,而且我知道为什么SQL Server不允许您这样做。
但是,除了使用扩展存储过程之外,还有其他解决方法吗?
而且请不要告诉我将我的函数转换为过程...
因此,我真正要问的是:是否有任何方法可以从Function内部运行存储过程?
编辑:
事实证明:有一种解决方法,但是它太错了,我不会做。
我将其更改为存储过程,然后在其他位置执行它。
没有找到相关结果
已邀请:
5 个回复
钾涎净介
先对冈蒲
嗜蒂谷尘旱
语句或
查询中使用它,则应该可以。 以下文章(我写过)显示了一个使用.NET / C#SQLCLR用户定义函数来执行存储过程的示例: 通往SQLCLR级别2的阶梯:示例存储过程和函数
刷遍派戳
它不像ѭ4那样令人恐惧,但对实际使用也有太多影响。
雄鞋谋塘
2.构建要在函数中执行的动态SQL(示例:您可以使用循环和并集,可以读取另一个Sproc,使用条件SQL的if语句和参数等)
3.将@innerSql包装在create function语句中,并定义您在@innerSql中使用的所有外部参数,以便可以将它们传递到生成的函数中。
这只是伪代码,但是该解决方案解决了许多问题,例如链接服务器的限制,参数,函数中的动态sql,动态服务器/数据库/表名,循环等。 您将需要对其进行调整,(例如:在函数中更改return)