我想知道是否可以在TSQL的更新语句中执行存储过程。
我想执行一个存储过程,它将为数字表设置CategoryID
,从更新语句当前所在的行传入数字。
类似于:
UPDATE [TelephoneNumberManagement].[dbo].[Number]
SET [CategoryID] = exec goldennumbers2 [Number];
答案 0 :(得分:8)
没有
如果它是一个函数,你可以这样做:
UPDATE [TelephoneNumberManagement].[dbo].[Number]
SET [CategoryID] = goldennumbers2([Number]);
请记住,功能不能产生副作用。如果您尝试在该过程中运行一堆DML语句,则应该:
Number
表保持同步的依赖项,请使用触发器。即便如此,你可能想...... 答案 1 :(得分:2)
实际上,有一些选项,如用户定义的函数。触发器可能能够做你想要的,取决于你想要做什么以及为什么。
您的goldennumbers2程序究竟做了什么?