Que falla en mi bloque pl/sql para crear un usuario en la Base de Dato??

Hola compañeros de este grandioso foro de bases de datos en esta ocasión tengo un problema con un bloque que estoy creando esta es la sintaxis que uso:

 

La idea es que haga un select ala dba_users y consulte el usuario si existe mande el error de que ya existe de lo contrario lo crea, al correrlo pide el login y el password el detalle es que me manda error anexo el error lo estoy haciendo conectado con el usuario system 

SET serveroutput ON DECLARE v_usuario varchar2(8):='&LOGIN'; v_cusuario dba_users.username%TYPE; v_v_password varchar2(30):='&PASSWORD'; BEGIN SELECT USERNAME INTO v_cusuario FROM dba_users WHERE username=v_usuario; dbms_output.put_line('FALLO!! el usuario "'||v_usuario||'" ya existe en la Base de Datos'); EXCEPTION WHEN NO_DATA_FOUND THEN CREATE USER v_usuario; IDENTIFIED BY v_password PASSWORD EXPIRE; DEFAULT TABLESPACE USERS; TEMPORARY TABLESPACE TEMP; PROFILE DEFAULT; ACCOUNT UNLOCK; dbms_output.put_line('EXITO!! fue creado el usuario en la Base de Datos '||v_usuario);) END; /

 

Aclaro que soy novato en esto para mi esta bien la sintaxis 

 

Creo que te falla porque estás poniendo punto y coma al final de cada linea, y sólo has de ponerlo al final de cada sentencia:

..
WHEN NO_DATA_FOUND THEN
CREATE USER v_usuario
IDENTIFIED BY v_password PASSWORD EXPIRE
DEFAULT TABLESPACE USERS
TEMPORARY TABLESPACE TEMP
PROFILE DEFAULT
ACCOUNT UNLOCK;

 

Saludos!

Muchas gracias por la ayuda Carlos ,la solución la muestro en el siguiente query por si alguien le sirve ya me crea el usurio a nivel Base de Datos.

SET serveroutput ON DECLARE v_usuario varchar2(8):='&LOGIN'; 
v_password varchar2(8):='&PASSWORD; 
v_cusuario dba_users.username%TYPE; 
BEGIN SELECT USERNAME INTO v_cusuario FROM dba_users WHERE username=v_usuario; 
dbms_output.put_line('El usuario "'||v_usuario||'" ya existe en la Base de Datos'); 
EXCEPTION WHEN NO_DATA_FOUND THEN EXECUTE IMMEDIATE 'CREATE USER '|| v_usuario||' IDENTIFIED BY '||v_password||' PASSWORD EXPIRE DEFAULT TABLESPACE USERS TEMPORARY TABLESPACE TEMP PROFILE DEFAULT ACCOUNT UNLOCK'; 
dbms_output.put_line('fue creado el usuario "'||v_usuario||'" en la BD. '); END; /