declare
        maxrecords constant int:=20;
        i int :=1;
    begin
        for i in 1..maxrecords loop
           insert into userinfo
           values
           (user_seq.nextval, to_char('29'+i),to_char('39'+i),0);
        end loop;
    dbms_output.put_line(' 成功录入数据! ');
    commit;
    end; 
/请问要想把to_char('29'+i)这点改成例如:张三+i(张三1,张三2)这样该怎么写,谢谢了!

解决方案 »

  1.   

    SQL> declare
      2          maxrecords constant int:=20;
      3          i int :=1;
      4      begin
      5          for i in 1..maxrecords loop
      6            insert into d
      7            values
      8            (i, '张三'||i);
      9          end loop;
     10      dbms_output.put_line(' 成功录入数据! ');
     11      commit;
     12      end;
     13  /PL/SQL 过程已成功完成。SQL> commit;提交完成。SQL> select * from d;         A B
    ---------- --------------------
             1 张三1
             2 张三2
             3 张三3
             4 张三4
             5 张三5
             6 张三6
             7 张三7
             8 张三8
             9 张三9
            10 张三10
            11 张三11         A B
    ---------- --------------------
            12 张三12
            13 张三13
            14 张三14
            15 张三15
            16 张三16
            17 张三17
            18 张三18
            19 张三19
            20 张三20已选择20行。SQL>
      

  2.   

    oracle的字符串连接用 ||,而不是一般语言中的 +