| 发表于:2007-02-08 10:36:06 楼主 |
我为公司做一个在后台实时运行,自动抓取文本文件内容,并且更新至数据库的后台程序.如果数据库中有文本文件内相对应的代号,该代号的数量一定要更新上去. 后台的存贮过程我使用了一个循环来处理.各位朋友们看一下,有没有比这更好的办法!!源码如下: create procedure use_updateautoorderno(@orderno bigint,@partno varchar(32),@number int) as begin declare @id int set @partno=ltrim(rtrim(@partno)) select @id=id from partno where ltrim(rtrim(partno))=@partno if @id is null return 1 else begin while(isnull(@id,0)> 0) begin begin tran update partno set qty=isnull(qty,0)+@number where id=@id if @@rowcount=1 begin insert into income (orderno,partid,qty,time) values(@orderno,@id,@number,convert(varchar(10),getdate(),110)) if @@rowcount=1 begin commit tran break end else begin rollback tran waitfor delay '00:00:02 ' select @id=id from partno where ltrim(rtrim(partno))=@partno end end else begin rollback tran waitfor delay '00:00:02 ' select @id=id from partno where ltrim(rtrim(partno))=@partno end end end end go |
|
|
|
|