我的自定义函数如下,这个函数是没问题的,问题在于, 我调试的时候,为什么老是用的是我这个函数的老版本,而不是最新版,老版本少了 set @ch=left(@sourceStr,1) ,导致死循环。我更改后,为什么调试的时候,老是用的是老版本?求教。
create function f_splitstr2(
@sourceStr varchar(200))
returns @temp TABLE(col VARCHAr(4))
as
begin
DECLARE @ch AS VARCHAr(4);
declare @index_1 as int;
set @ch=left(@sourceStr,1)
while @ch <> ''
begin
INSERT @temp VALUES(@ch)
set @sourceStr=stuff(@sourceStr,1,1,'')
set @ch=left(@sourceStr,1)
end
RETURN
end
go
sql server 2008 强制 刷新 自定义函数问题
答案:2 悬赏:30
解决时间 2021-03-03 20:37
- 提问者网友:他是我的あ男人
- 2021-03-03 06:58
最佳答案
- 二级知识专家网友:不傲怎称霸
- 2021-03-03 07:07
DROP FUNCTION f_splitstr2
GO
执行上述语句后,重新运行创建自定义函数的语句即可。原因是你仅仅修改语句不行,自定义函数已经创建,必须删除自定义函数,重新创建。
GO
执行上述语句后,重新运行创建自定义函数的语句即可。原因是你仅仅修改语句不行,自定义函数已经创建,必须删除自定义函数,重新创建。
全部回答
- 1楼网友:专属的偏见
- 2021-03-03 08:18
您好,提问者:
如果这个function中定于了表的字段或者查询多列,建议从这里优化。
另外,您可以给function中的字段加个索引,以便快速查询返回。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯