关于一个insert数据库的sql
我现在有个数组A={1,2,3,4,5,6,7,8} 
 现要求把这个数组里的每一个数据作为一条记录一次性全部添加到表T里; 
 请问有没什么比较好的方法,谢谢;   
 对了,A里的数据是可变的,可能会比较大 
------解决方案--------------------declare @AllChar varchar(50) 
 declare @FirstChar varchar(50) 
 declare @FirstPoint int 
 declare @lenth int    
 set @AllChar= '1,2,3,4,5,6,7,8 '  ----可以传入一个字符串 
 set @lenth=len(@AllChar) 
 create  table #Temp_String(FID int identity,Content varchar(50)) 
 set @FirstPoint=charindex( ', ',@AllChar)   
 while( @FirstPoint> 0) 
 begin 
 set @FirstChar=substring(@AllChar,0,@FirstPoint) 
 --select @FirstChar 
 insert into #Temp_String(Content) values (@FirstChar) 
 set @AllChar=substring(@AllChar,@FirstPoint+1,@lenth) 
 set @FirstPoint=charindex( ', ',@AllChar) 
 end    
 insert into #Temp_String(Content) values (@AllChar)  
 select * from #Temp_String
------解决方案--------------------  create table T(col int)   
 declare @str varchar(20) 
 set @str= '1,2,3,4,5,6,7,8 ' 
 declare @sql varchar(8000) 
 set @sql= 'insert T select col= ' ' ' 
 select @sql=@sql+replace(@str,  ', ',  ' ' ' union all select  ' ' ')+ ' ' ' ' 
 exec(@sql)   
 select * from T   
 --result 
 col          
 -----------  
 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8   
 (8 row(s) affected)