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

esegui una stringa come query in Oracle

Quando execute immediate , il comando che esegui non dovrebbe avere un punto e virgola alla fine; che è un separatore di comandi in SQL Developer (e SQL *Più e altri client), non fa parte dell'istruzione SQL stessa.

SELECT 'CREATE SEQUENCE ID_SEQ MINVALUE 1 MAXVALUE 9999999999 START WITH '
    || (max(ID)+1) || ' INCREMENT BY 1 CACHE 20' INTO y FROM TEST_TABLE;

Questo è mostrato negli esempi per SQL semplice . Solo per confonderti, se stai usando PL/SQL all'interno dell'SQL dinamico, hai ancora bisogno di punti e virgola appropriati per PL/SQL stesso, sebbene non / in esecuzione lo useresti per eseguirlo direttamente da un client. Ciò è mostrato in altri esempi .