代码之家  ›  专栏  ›  技术社区  ›  AndyDaSilva52 omerts

IF语句-ORA-06502中存在Oracle类型表收集方法:PL/SQL:erro:字符到数字转换错误

  •  1
  • AndyDaSilva52 omerts  · 技术社区  · 7 年前

    我需要收集一个包裹,但我不知道哪里出错了。。。

    这是我的声明和初始化:

    avversao varchar2(30);
    TYPE tListaVersaoHomologada IS TABLE OF NVARCHAR2(30);
    vVersaoHomologada tListaVersaoHomologada := tListaVersaoHomologada('0.06', '0.07');
    

    if NOT(vVersaoHomologada.EXISTS(avversao)) then
            ...
    end if;
    

    变量

    avversao
    

    具有以下值之一:

    • 0.06
    • 0.07

    参考:

    Using PL/SQL Collections and Records

    Collection Methods

    1 回复  |  直到 7 年前
        1
  •  1
  •   Arkadiusz Łukasiewicz    7 年前

    member of -检查集合中是否存在值。
    EXISTS -用于检查集合在索引中是否有值。

    declare 
    avversao varchar2(30) := '0.06';
    TYPE tListaVersaoHomologada IS TABLE OF VARCHAR2(30);
    vVersaoHomologada tListaVersaoHomologada := tListaVersaoHomologada('0.06', '0.07');
    begin
    
     if avversao member of vVersaoHomologada then 
      dbms_output.put_line('!!!!Exist!!!!!');
     end if; 
    
    end;