À la ligne 5, il y a un / manquant.
Il y a une bonne réponse sur les différences entre ; et / ici.
Fondamentalement, lors de l'exécution d'un CREATE bloquer via un script, vous devez utiliser / pour faire savoir à SQLPlus quand le bloc se termine, puisqu'un bloc PL/SQL peut contenir de nombreuses instances de ; .