读书人

一个自定义函数返回表结构的异常

发布时间: 2012-02-15 12:09:44 作者: rapoo

一个自定义函数返回表结构的错误


CREATE FUNCTION p_split
(@c varchar(2000),@split varchar(20))
return table
as
declare @t table(CCC varchar(20))
begin
while(charindex(@split,@c) <> 0)
begin
insert @t(CCC) values (substring(@c,1,charindex(@split,@c)-1))
set @c = stuff(@c,1,charindex(@split,@c), ' ') -- 删除指定长度的字符并在指定的起始点插入另一组字符
end
insert @t(CCC) values (@c) ---最后一个不含分隔的加进来
return (select * from @t)
end

从网上找个存储过程,想转成自定义函数 ,可是生成的时候老是错误,不知道为何,错误提示如下,请帮我看看```

[解决办法]
CREATE FUNCTION p_split
(@c varchar(2000),@split varchar(20))
returns @t table(CCC varchar(20))
as
begin
while(charindex(@split,@c) <> 0)
begin
insert @t(CCC) values (substring(@c,1,charindex(@split,@c)-1))
set @c = stuff(@c,1,charindex(@split,@c), ' ') -- 删除指定长度的字符并在指定的起始点插入另一组字符
end
insert @t(CCC) values (@c) ---最后一个不含分隔的加进来
return
end
GO
--用
Select * From dbo.p_split( '1.2.3 ', '. ')
[解决办法]
你看下助的CREATE FUNCTION

返回是表量的候,return那特殊一些。


帖子右上角的“管理”,你就知道怎分了。

读书人网 >SQL Server

热点推荐