sql >> Databáze >  >> RDS >> Oracle

Vyžaduje PS/SQL společnosti Oracle specifické řazení položek v sekci `deklarovat` bloku?

Od Oracle 10g R2 je odpověď ano, v item_list_1 a item_list_2 je vyžadováno řazení položek, i když nejsou povoleny definice kurzoru.

Například definice procedury není povolena před deklarací proměnné:

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. Nelze vytvořit připojení JDBC

  2. jak hledat řetězec uložených procedur SQL Server 2008 R2?

  3. Jak získám k nejbližších sousedů pro geodjango?

  4. SQL:Jak vyplnit prázdné buňky hodnotou předchozího řádku?