Pouvons-nous utiliser execute immediate pour l'instruction select?
Pouvons-nous utiliser execute immediate pour l'instruction select?

Vidéo: Pouvons-nous utiliser execute immediate pour l'instruction select?

Vidéo: Pouvons-nous utiliser execute immediate pour l'instruction select?
Vidéo: Visual Expert for Oracle | PL/SQL Code Maintenance, Quality and Security 2024, Peut
Anonim

Le programme peut utiliser EXECUTER IMMEDIAT . EXÉCUTER IMMÉDIATEMENT définit un sélectionner boucle pour traiter les lignes renvoyées. Si la sélectionner renvoie une seule ligne, il n'est pas nécessaire de utilisation une sélectionner boucle.

De celui-ci, comment utiliser l'exécution immédiate ?

Vous pouvez mettre un EXÉCUTER IMMÉDIATEMENT avec l'instruction RETURNING BULK COLLECT INTO à l'intérieur d'une instruction FORALL. Vous pouvez stocker les résultats de toutes les instructions INSERT, UPDATE ou DELETE dans un ensemble de collections. Vous pouvez transmettre des éléments de collection indicés au EXÉCUTER IMMÉDIATEMENT déclaration à travers le À L'AIDE DE clause.

Par la suite, la question est: avons-nous besoin d'un commit après exécution immédiate ? S'engager n'est pas requis après tous EXÉCUTER IMMÉDIATEMENT . Certaines déclarations faire NE PAS exiger une s'engager ; par exemple, si tu tronquer une table avec TRUNCATE. Tous les travaux non engagés dans la transaction en cours sont engagés ou annulé - pas seulement la déclaration réalisé par le EXÉCUTER IMMÉDIATEMENT.

De cette manière, pouvons-nous utiliser execute immediate dans la fonction Oracle ?

Les EXÉCUTER IMMÉDIATEMENT instruction exécute une instruction SQL dynamique ou anonyme PL/SQL bloquer. Vous pouvez utiliser pour émettre des instructions SQL qui ne peuvent pas être représentées directement dans PL/SQL , ou pour construire des déclarations où tu fais ne pas connaître à l'avance tous les noms de table, les clauses WHERE, etc.

Pourquoi utilisons-nous execute immediate dans Oracle ?

EXÉCUTER IMMÉDIATEMENT permet exécution d'une instruction DML ou DDL qui est conservée sous forme de chaîne et évaluée uniquement au moment de l'exécution. Cela permet de créer dynamiquement l'instruction en fonction de la logique du programme. EXÉCUTER IMMÉDIATEMENT est aussi le seul moyen de exécuter DDL dans un PL/SQL bloquer.

Conseillé: