例如:sql 定义最大长度字符串:declare sqlstr  varchar(max)
oracle 的类同如定义啊

解决方案 »

  1.   

    直接声明varchar2就可以了
      

  2.   

    别想了,没有这种写法,varchar2的长度必须明确,创建表字段的时候varchar2字段类型最长4000,在SQL中定义的varchar2类型变量最大长度32767。
      

  3.   

    最长4000,反正varchar2是变长,存储的实际字节长度。。遇到这情况直接varchar2(4000),效果一样
      

  4.   

    declare sqlstr  clob 也不行,请问如何是好
      

  5.   

    varchar/varchar2  varchar是长度不固定的,比如说,你定义了varchar(20),当你插入abc,则在数据库中只占3个字节。
      varchar同样区分中英文,这点同char。
      varchar2基本上等同于varchar,它是oracle自己定义的一个非工业标准varchar,不同在于,varchar2用null代替varchar的空字符串  
            varchar/varchar2适用于长度不固定的,一般不含中文的情况
      

  6.   

    DECLARE
    lv_sql clob;--很长长很长的字符串 4G ,记住太长不能后在plsql不能打印,不能to_char,只要执---行就可以了,想要看结果可以写入一个表字段位clob,再select查看。
    X number; --声明变量
    BEGIN
    x:=1; --给初值
    FOR X IN REVERSE 1..10000 LOOP --reverse由大到小
    lv_sql :=lv_sql || 'insert into testtable (aa) values(''111'')'|| ';';
    END LOOP;
    execute immediate lv_sql;
    END;
    ---可以拼接可以很长很长,希望能帮到大家,然后点个赞,让更多的人知道