DECLARE
type strings_table is table of varchar2(10) index by binary_integer;
         strings strings_table;
         int number;
BEGIN
  int := 1;
        strings(int) := 'element1';
        if strings.exists(int) then
            dbms_output.put_line(strings(int));
        else
            dbms_output.put_line('no data!');
            return;
        end if;当我执行的时候就报错误
ORA-06550: 第 14 行, 第 0 列: 
PLS-00103: 出现符号 "end-of-file"在需要下列之一时:
 begin case declare
   end exception exit for goto if loop mod null pragma raise
   return select update while with <an identifier>
   <a double-quoted delimited-identifier> <a bind variable> <<
   close current delete fetch lock insert open rollback
   savepoint set sql execute commit forall merge pipe
请问是什么原因?非常感谢!

解决方案 »

  1.   

     
    是不是这样啊?
           else{
                dbms_output.put_line('no data!');
                return;}
            end if;
      

  2.   

    可惜不是T-SQL  ..我不知道return;放在那有什么用 ??去掉试试 .
      

  3.   

    DECLARE
                    type strings_table is table of varchar2(10) index by binary_integer;
                    strings strings_table;
                int number;
    BEGIN
         int := 1;
            strings(int) := 'element1';
            if strings.exists(int) then
                dbms_output.put_line(strings(int));
            else
                dbms_output.put_line('no data!');
                return;
            end if;
    COMMIT;END;