SQL实现,求助了!大牛们
我有一个参数是 1,2,3,4,5,6,
我需要实现的是:里面有6个值需要插入 insert into a1(pid,name) values(@pid,@name)
当前是有留个值,需要循环插入每一个值, pid 就是 1,2,3,4,5,6,
注意,最后还有一个逗号啊。
求助啊!只能使用sql来现实
------解决方案-------------------- string str="1,2,3,4,5,6,";
string[] value=str.Split(',');
foreach(string id in value){
if(id!=""){
//执行SQL语句 id就是要插入的id值
}
}
------解决方案--------------------纯SQL实现:
1、将参数插入1个临时表
Create Table #Temp(F1 int)
Insert into Temp values(1);Insert into Temp values(2)...
2、游标循环拼接SQL
declare @txt varchar(max),@params int
DECLARE MyAuthors CURSOR FOR SELECT F1 From Temp
Open MyAuthors
FETCH NEXT FROM MyAuthors Into @params
WHILE @@FETCH_STATUS = 0
BEGIN
set @txt=@txt+'insert into a1(pid,name) values('+@params+',@name);'
FETCH NEXT FROM MyAuthors Into @params
End
CLOSE MyAuthors
DEALLOCATE MyAuthors
3、执行sql
exec (@txt)
------解决方案--------------------如果是循环插入有规律的值还好~~
自己看吧http://zhidao.baidu.com/question/107647077.html
其实我是菜鸟~~~
哦也 一边查一边帮忙的 。嘿嘿