zoukankan      html  css  js  c++  java
  • MS SQL Server2005存储过程、游标、游标嵌套综合例子

    MS SQL Server2005存储过程、游标、游标嵌套综合例子:

    放在这里备忘》》》

    Java代码  收藏代码
      1. create proc decisionPathRefSchemes  
      2. as  
      3. begin  
      4.     DECLARE @pathId varchar(64)  
      5.     DECLARE @schemeId varchar(64)  
      6.     DECLARE @flag integer  
      7.     DECLARE @seq integer  
      8.     DECLARE mycursor cursor    
      9.         for select id from imps_pd_decision_path where surfaceType = '沥青路面' and roadGrade = '高速、一级、二级'  
      10.     DECLARE mycursor2 cursor    
      11.         for select id from imps_pd_decision_scheme   
      12.           
      13.     set @seq = 10000  
      14.       
      15.     open mycursor   
      16.     fetch next from mycursor into @pathId  
      17.     while @@fetch_status=0  
      18.     begin   
      19.         set @flag = 0  
      20.         select @flag=1 from imps_pd_path_ref_scheme where pathId=@pathId  
      21.         print @pathId  
      22.         print @flag  
      23.         if @flag = 0   
      24.         begin  
      25.             /*使用游标嵌套*/  
      26.             open mycursor2  
      27.             fetch next from mycursor2 into @schemeId  
      28.             while @@fetch_status=0  
      29.             begin  
      30.                 insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,@schemeId)  
      31.                 set @seq = @seq + 1   
      32.                 fetch next from mycursor2 into @schemeId  
      33.             end  
      34.             close mycursor2  
      35.               
      36.             /* 
      37.             不用游标时: 
      38.             insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6cd457b0001') 
      39.             set @seq = @seq + 1 
      40.             insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6ce234a0003') 
      41.             set @seq = @seq + 1 
      42.             insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6cf087c0005') 
      43.             set @seq = @seq + 1 
      44.             insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6cf4b230006') 
      45.             set @seq = @seq + 1 
      46.             insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6cf95aa0007') 
      47.             set @seq = @seq + 1 
      48.             insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6cfd5920008') 
      49.             set @seq = @seq + 1 
      50.             insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d023160009') 
      51.             set @seq = @seq + 1 
      52.             insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d06b4b000a') 
      53.             set @seq = @seq + 1 
      54.             insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d2c87a000b') 
      55.             set @seq = @seq + 1 
      56.             insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d2f900000c') 
      57.             set @seq = @seq + 1 
      58.             insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d32cf1000d') 
      59.             set @seq = @seq + 1 
      60.             insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d36bef000e') 
      61.             set @seq = @seq + 1 
      62.             insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d3ce44000f') 
      63.             set @seq = @seq + 1 
      64.             insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d419b50010') 
      65.             set @seq = @seq + 1 
      66.             insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52ad6a9c0012ad6d541bc0013') 
      67.             set @seq = @seq + 1 
      68.             insert into imps_pd_path_ref_scheme (id,pathId,schemeId) values (convert(varchar(64), @seq),@pathId,'8a819be52afa3280012afae7baaa0001') 
      69.             set @seq = @seq + 1 
      70.             */  
      71.         end  
      72.         fetch next from mycursor into @pathId  
      73.     end  
      74.     /* 嵌套的游标先销毁*/  
      75.     deallocate mycursor2  
      76.     close mycursor  
      77.     /* 外层游标后销毁*/  
      78.     deallocate mycursor  
      79. end  
      80.   
      81. /* 执行存储过程*/  
      82. --exec decisionPathRefSchemes  
      83.   
      84. /* 删除存储过程*/  
      85. --drop proc decisionPathRefSchemes
  • 相关阅读:
    1373:鱼塘钓鱼(fishing)
    1261:【例9.5】城市交通路网
    1259:【例9.3】求最长不下降序列
    1260:【例9.4】拦截导弹(Noip1999)
    1258:【例9.2】数字金字塔
    1261:【例9.5】城市交通路网
    1260:【例9.4】拦截导弹(Noip1999)
    1259:【例9.3】求最长不下降序列
    1257:Knight Moves
    [HAOI2008]硬币购物(动态规划、容斥、搜索)
  • 原文地址:https://www.cnblogs.com/soundcode/p/2540292.html
Copyright © 2011-2022 走看看