J'essayais de suivre certaines instructions aujourd'hui, et cela commence par le commentaire
REM In SQLPlus I manually copy in each line and execute it.
C'est bien, je n'ai pas SQLPlus, j'ai SQLDeveloper. Les lignes qui ont été collées étaient du type:
@\\server\dir\dir\dir\commandfile1.txt;
COMMIT;
...etc.
Cela ne me plaisait pas lorsque j'ai essayé cela dans une fenêtre SQL. J'ai ouvert et collé à la main dans les commandes, et ça ne me plaisait pas non plus. (Ai-je mentionné que je ne suis pas très bon avec cette application ni Oracle, mais que tout le monde était dehors aujourd'hui?) Les fichiers là-bas ont commencé avec du code comme:
rem
set echo on
rem
execute procedure_name ('parameter1', 'parameter2');
Un collègue avait SQLPlus et nous l'avons résolu ensemble. Mais, y a-t-il un moyen pour moi de faire cela avec SQLDeveloper, donc je ne suis pas bloqué s'il est absent aussi?
Pour exécuter des scripts dans SQL Developer:
@"\Path\Scriptname.sql"
(Vous n'avez besoin que des guillemets s'il y a des espaces)
Vous pouvez définir un chemin par défaut: menu Outils> Préférences> Base de données> Feuille de calcul> Sélectionner le chemin par défaut pour rechercher des scripts.
Je cherchais dans les fichiers d'aide et j'ai trouvé comment le faire dans Concepts et utilisation de SQL Developer -> Utilisation de la feuille de calcul SQL -> Script Runner.
Fondamentalement, vous devez faire précéder le nom du fichier avec un @. Par exemple, @C:\MyScript\Script.sql.
Vous pouvez ensuite en exécuter un lot de cette façon. Notez que la commande ne semble pas aimer les espaces dans le chemin du fichier.
Pour chaque fichier que vous devez exécuter, trouvez-le et déposez-le dans SQLDeveloper. Exécutez le script (F5) puis validez (F11). Cela fonctionnera pour certains scripts, mais pas tous.
vous pouvez le faire en utilisant sqlcl de la même manière que vous le feriez en utilisant SQL PLUS, à partir de la ligne de commande:
sqlcl user/password@Host:port:sid @file.sql
le fichier doit être dans le même répertoire que sqlcl.
Cette solution est la meilleure option si vous essayez d'exécuter beaucoup d'instructions sur un fichier SQL.
SQL Developer est livré avec un autre outil appelé sqlcl . Cela ressemble un peu à SQLPlus mais utilise en fait des bits de SQL Developer pour donner une interface de type ligne de commande/script compatible.
Vous pourrez l'utiliser pour exécuter des commandes de style sqlplus sans combattre les extras de l'interface graphique de style développeur SQL, ce qui peut prêter à confusion.
Recherchez-le sous l'endroit où le développeur SQL est assis. Si vous ne l'avez pas là, vous pouvez le télécharger et le déployer dans votre dossier sqldeveloper.