注册 登录
编程论坛 SQL Server论坛

[求助]存储过程里如何传数组?

suntao 发布于 2007-05-30 10:50, 1443 次点击
存储过程里如何传数组?比如我要传一个stirng[]类型的数组,怎么传到sql里,然后做一个批处理!望高手指点,跪谢!!!
4 回复
#2
从小到大2007-05-30 12:30

传数组?做什么 批量更新 批量插入?
这个不用再SQL里面处理吧

#3
suntao2007-05-31 07:35

比如我要循环插入一个东西,如果写在程序里的话,速度肯定没有直接传数组快

#4
mingwangxing2007-06-01 00:51

我的一个笨方法,通过取子串象取数组一样取字符串,
declare @x varchar(20) --必须为可变字符串
select @x='meg,good,hello,dell' --例子,以逗号分隔
declare @n int --逗号的位置

select @n=charindex(',',@x) --取出第一个逗号的位置
while @n>0 --即存在逗号
begin
select @n=charindex(',',@x)
if @n<> 0
begin

print substring(@x,1,@n-1) --这个就是要取的字符串
--print @x
--print @n
select @x=right(@x,len(@x)-@n) --截取上次逗号后面的字符串。
end
else --已经没有逗号了,只剩一个单词了
print @x --这个就是要取的字符串
end

#5
从小到大2007-06-01 08:46

楼上的方法可以 但这样的话 还不如在程序中执行 这样的速度不会比程序中快吧

1