sql >> Database teknologi >  >> RDS >> Oracle

Kræver Oracles PS/SQL specifik rækkefølge af poster i "erklære"-sektionen af ​​en blok

Fra Oracle 10g R2 er svaret ja, der er en påkrævet rækkefølge mellem elementer i item_list_1 og item_list_2, selv hvis markørdefinitioner er tilladt at være forkerte.

For eksempel er en proceduredefinition ikke tilladt før en variabelerklæring:

SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi
PL/SQL Release 10.2.0.4.0 - Production
CORE    10.2.0.4.0  Production
TNS for Solaris: Version 10.2.0.4.0 - Production
NLSRTL Version 10.2.0.4.0 - Production

SQL> declare
  2      variable_declaration number;
  3      procedure procedure_definition is begin
  4          null;
  5      end procedure_definition;
  6  begin
  7      null;
  8  end;
  9  /

PL/SQL procedure successfully completed.

SQL> declare
  2      procedure procedure_definition is begin
  3          null;
  4      end procedure_definition;
  5      variable_declaration number;
  6  begin
  7      null;
  8  end;
  9  /
    variable_declaration number;
    *
ERROR at line 5:
ORA-06550: line 5, column 5:
PLS-00103: Encountered the symbol "VARIABLE_DECLARATION" when expecting one of the following:
begin function package pragma procedure form
ORA-06550: line 8, column 4:
PLS-00103: Encountered the symbol "end-of-file" when expecting one of the following:
end not pragma final instantiable order overriding static
member constructor map


  1. hvorfor kunne jeg bruge first()-metoden, når min resultatsættype kun er fremadrettet?

  2. Sådan opretter du output med to kolonner fra en enkelt kolonne

  3. PHP og MySQL Salt Sikkerhedsspørgsmål

  4. Udbyderen er ikke kompatibel med versionen af ​​Oracle-klienten