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

udfører `EXECUTE IMMEDIATE ` Oracle Statement Får fejl

Problemet er ; tegn i 'SELECT * FROM DUAL;' .

Fra dokumentation :

execute_immediate_statement ::=
EXECUTE_IMMEDIATE dynamic_string
 { 
    INTO { define_variable [, define_variable ...] | record_name } 
  | BULK COLLECT INTO { collection_name [, collection_name ...] | :host_array_name } 
 }
   [ USING [ IN | OUT | IN OUT ] bind_argument
   [, [ IN | OUT | IN OUT ] bind_argument] ... ] [ returning_clause ] ;

... hvor dynamic_string er (min fremhævelse):

Da det ikke accepterer flere udsagn, medmindre du omslutter dem i en enkelt PL/SQL-blok, vil ; separator forventes ikke.

Der er en bedre forklaring på Brug af EXECUTE IMMEDIATE-erklæringen i PL/SQL :



  1. Oracle SQL:Hvordan viser man tomme uger/uger uden data?

  2. Dump til CSV/Postgres hukommelse

  3. Gem flere billeder i mysql php fra Android, men kun ét billede bliver indsat

  4. Hvorfor virker denne MySQL-opdatering ikke?