2010-02-18 10 views
1

Disons que j'ai un grand script et que je veux le découper en morceaux, puis charger les morceaux à partir d'un fichier script principal.Comment charger un fichier script externe

La question est de savoir comment charger et exécuter un script externe à l'aide de SQL simple dans Oracle DBMS ou PL/SQL à partir d'un autre fichier de script?

Répondre

3

Pour SQL * plus, vous pouvez utiliser:

@filename.sql 

ou

@@filename.sql 

S'il vous plaît se rendre compte que @ est un SQL * Plus commande - pas SQL ou commande PL/SQL. Donc, vous ne pouvez pas utiliser cela à l'intérieur d'une procédure stockée PL/SQL - cela n'aurait pas beaucoup de sens non plus, car le contexte essentiel comme le répertoire de travail courant est absent dans ce cas.

Formé dans une procédure stockée, vous pouvez en principe charger du code externe en utilisant SQL dynamique, mais une meilleure façon de casser une procédure stockée est de la diviser en plusieurs procédures stockées plus petites. Si vous aimez vous pouvez regrouper ces togehter dans un paquet (voir http://download.oracle.com/docs/cd/E11882_01/appdev.112/e10472/packages.htm#CIHIJECJ)

+0

Ce dernier a travaillé pour moi, merci! Je suis supposé préparer une démo dans laquelle je crée un schéma, peupler des tables avec des données et créer un paquet. Tout ceci est supposé s'exécuter à partir d'un seul fichier - c'est la raison principale pour laquelle je voulais tout découper. –

Questions connexes