PL/SQL: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
mNessun oggetto della modifica |
||
Riga 12:
Il PL/SQL invece, com un linguaggio procedurale [[Turing-complete]], permette agli sviluppatori dei [[database]] [[Oracle]] di interfacciarsi con il sottostante database in maniera imperativa. Gli statements [[SQL]] possono effettuare chiamate in line in modo esplicito alle funzioni PL/SQL, o possono lanciare triggers PL/SQL in caso di predefiniti eventi [[DML]].
Dato che i programmatori possono incorporare statements [[SQL]] [[DML]] nel PL/SQL (una definizione di cursore, per esempio, o usare la sintassi SELECT .. INTO), statements [[DDL]] come CREATE TABLE-DROP INDEX etc.. è richiesto l'uso dell' "[[SQL]] Dinamico". Le prime versioni di Oracle richiedevano l'uso di un clomplesso package per l'[[SQL]] dinamico (<code>DBMS_SQL</code>) nel quale il sistema doveva parsare esplicitamente ed eseguire l'[[SQL]] statement. Le ultime versioni hanno incluso una sintassi <code>EXECUTE IMMEDIATE</code> chiamata "Native Dynamic [[SQL]]" che semplifica il problema. Qualsiasi uso di [[DDL]] in Oracle può risultare un esplicito commit. I programmatori possono usare anche l'[[SQL]] dinamico per eseguire [[DML]] quando non conoscono in anticipo l'esatto contenuto dello statement.
|