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
- Versión para impresión
- Inicie sesión o registrese para enviar comentarios
Creo que te falla porque
Subido por Carlos el 1 Abril, 2015 - 20:52
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:
Saludos!
Muchas gracias por la ayuda
Subido por ellid (no verificado) el 6 Abril, 2015 - 16:47
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.