Oracle
 sql >> Base de données >  >> RDS >> Oracle

SQLPlus essaie de supprimer le package deux fois

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 ou BEGIN , 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.