Les règles d'exécution des commandes SQLplus sont essentiellement :
- Exécute le texte actuel lorsque vous rencontrez un point-virgule. Ainsi si une ligne ne se termine pas par un point-virgule, le texte courant continue d'être collecté.
- Si vous rencontrez
DECLARE
ouBEGIN
, collectez tout le texte et n'exécutez pas sur les points-virgules - Si vous rencontrez une barre oblique (
/
), exécute le texte collecté.
Donc, ce qui se passe dans vos cas, c'est que le point-virgule et la barre oblique exécutent le DROP
déclarations.
Pour résoudre ce problème, supprimez la barre oblique.
Vous n'avez besoin de la barre oblique que si vous avez un bloc de PL/SQL, qui toujours avec un END
déclaration. Utilisez des points-virgules pour tout le reste.
Remarque :les règles ci-dessus sont simplifiées. C'est plus complexe en pratique.