常用存储过程2(获取编码级次)
 Create Proc GetNumberLevel
Create Proc GetNumberLevel @num varchar(100),
   @num varchar(100), @level int output
   @level int output as
as set @level=1
set @level=1 declare @c char(1),@i int,@section varchar(20)
declare @c char(1),@i int,@section varchar(20) set @i=1
set @i=1 set @section=''
set @section='' while @i<=len(@num)
while @i<=len(@num) begin
begin if substring(@num,@i,1)='.'
   if substring(@num,@i,1)='.' begin
   begin if len(@section)=0
       if len(@section)=0 raiserror ('编码格式错误',16,1)    --某一节的编码为空
           raiserror ('编码格式错误',16,1)    --某一节的编码为空 set @level=@level+1
       set @level=@level+1 set @section=''
       set @section='' end
   end else
   else set @section=@section+substring(@num,@i,1)
       set @section=@section+substring(@num,@i,1) set @i=@i+1
   set @i=@i+1 end
end if len(@section)=0
if len(@section)=0 raiserror ('编码格式错误',16,1)    --最后一节的编码为空
           raiserror ('编码格式错误',16,1)    --最后一节的编码为空
 GO
GO
 
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号