SQL 循环插入多条数据

来源:互联网 发布:java aes256 报错 编辑:程序博客网 时间:2024/05/16 08:38

原文转载自:http://blog.csdn.net/sz_bdqn/article/details/5842314

在开发中经常需要用大量数据来测试,在没有数据的情况下,自己一条一条的插入事在不大可能,用SQL语句,一下就OK了,具体实现如下:

 

[c-sharp] view plaincopyprint?
  1. sql下代码:  
  2.   
  3. //声明变量;   
  4. DECLARE @i int   
  5. DECLARE @name varchar(10)   
  6. DECLARE @password varchar(10)   
  7. Set @i = 1000   
  8.   
  9. //开始循环插入数据;   
  10. WHILE @i < 1000   
  11. BEGIN   
  12. Set @i =@i +1   
  13. SET @name = RIGHT('00000' + CAST(@i AS varchar(10)),5)    
  14. set @password = @name   
  15. insert into admin values(@name,@password)   
  16. END   
  17.   
  18.   
  19.   
  20.   
  21.   
  22.    
  23.   
  24. (2)oracle下代码:  
  25.   
  26. (1)先理论   
  27. declare    
  28.   i number;   
  29. begin   
  30. i := 1;   
  31. while i<=100 loop   
  32.       dbms_output.put_line(i);   
  33.       i := i+1;   
  34. end loop;   
  35. end;   
  36.   
  37. (2)实践   
  38. declare   
  39.   year varchar2(4):='2008';   
  40.   month number(2):=1;   
  41.   schoolid number(10):=14640;   
  42. begin   
  43.   loop     
  44.     loop   
  45.       insert into xx_jb1   
  46.         (ID,   
  47.          XXID,   
  48.          GLBMJY,   
  49.          XXXZGB,   
  50.          XXLS,   
  51.          HJXX,   
  52.          HJXS,   
  53.          LX_TZH_XX,   
  54.          LX_TZH_XS,   
  55.          BGNF,   
  56.          BGYF,   
  57.          STATE,   
  58.          SSRQ,   
  59.          TJRQ,   
  60.          TBR)   
  61.       values   
  62.         (seq_xx_jb1.nextval,   
  63.          schoolid,   
  64.          1,   
  65.          1,   
  66.          2,   
  67.          1,   
  68.          248,   
  69.          1,   
  70.          248,   
  71.          year,   
  72.          month,   
  73.          '已通过',   
  74.          sysdate,   
  75.          sysdate,   
  76.          '管理员');   
  77.        month := month+1;   
  78.        exit when month>12;   
  79.      end loop;   
  80.      month := month-12;   
  81.      schoolid := schoolid+1;   
  82.      exit when  schoolid>15040;   
  83.   end loop;   
  84. end;   


0 0
原创粉丝点击