好,比如說我在web上進行input數據,由於input的是隨user的需求進行input.
在input的時候,不限制input的條數.可以input 1-n條紀錄.
那我就只能用相同名字的輸入框進行紀錄數據.在asp中紀錄的數據是以這種格式紀錄的
(234,2345,5645,65756,342,453,.....).
記錄了以後需要進行拆分,然後一個個數據進行input.
在asp中我可以實現.我希望現在將這些寫到存儲過程中.如何在存儲過程中進行這樣的拆分然後input Data.
在input的時候,不限制input的條數.可以input 1-n條紀錄.
那我就只能用相同名字的輸入框進行紀錄數據.在asp中紀錄的數據是以這種格式紀錄的
(234,2345,5645,65756,342,453,.....).
記錄了以後需要進行拆分,然後一個個數據進行input.
在asp中我可以實現.我希望現在將這些寫到存儲過程中.如何在存儲過程中進行這樣的拆分然後input Data.
解决方案 »
- |zyciis| 如何取出一条记录的ID号,同时更新他的操作状态Sel 而且在并发的时候不会出错重复读取 谢谢 第二贴
- 请问,SQL Server 2005 express 对数据库文件本身的大小或者行数有限制吗?
- error: 0 - 远程主机强迫关闭了一个现有的连接
- ///////数据库复制问题///////
- 菜鸟提问,关于自己编的软件在别人电脑上不能使用的问题
- Microsoft OLE DB Provider for SQL Server 错误 '80004005'
- 请问有谁见过200多和300多个字段的表吗????
- Access数据库文件大小猛长???
- sql server 7.0与sql server 2000在 Bit型上不兼容
- 觉得这是微软的bug
- 在SQLServer中怎样实现这个问题?
- 在线等!!问题、急!!!
set @a = 123,324,436,567,....
while charIndex(',', @a) > 0
{
set @c = charIndex(',', @a)
set @b = left(@a,@c-1)
set @a = substring(@a, @c+1)
insert into …… values (@b)
}
break
insert into …… values (@a)办法笨了点儿
1.在前台处理,通过VB/VC的字符串的处理函数来分割,然后做为参数传入到INPUT SP.
2.直接将该长字符川保存到一个过渡表种的NTEXT字段,然后SP或TRIGGER在后台处理,插入的相应的目标表。你可以根据自己的需求选择。
declare @str as varchar(20)
declare @iFor int
declare @strTemp as varchar(10)
declare @jFor intselect @str = 'a,bb,ccc,dddd,eeeeee'
select @iFor = 1
select @jFor = 1while (1 = 1)
begin
select @jFor = charindex(',', @str, @jFor)
if @jFor = 0
begin
select @strTemp = right(@str, len(@str)-@iFor+1)
print @strTemp
break
end
select @strTemp = substring(@str,@iFor,@jFor-@iFor)
print @strTemp
select @iFor = @jFor+1
select @jFor = @jFor+1
endsolution 2declare @string varchar(1000)
declare @xh char(10)
declare @sh varchar(13)
set @string='l,ll,xl,ml,xxl'
set @string='select * into ##tmp from (select '''+replace(@string,',','''as str union all select ''')+''') a'
exec(@string)
print @string
Thanks weixiao51(三土)
不過你可能理解我所說的了.
我是要將A1(21,3434,456,67,543....),B1(abc,cde,efg,ghi....)這樣的數組按照這種方式insert
insert (A,B)values(21,abc)
insert (A,B)values(3434,cde)
......
能不能有更好的辦法呀.