Crear Usuarios Oracle desde Froms 6i

hngb
26 de Noviembre del 2004
Muy buenos dias...

Necesito ayuda sobre la forma de poder crear usuarios Oracle nuevos desde una forma 6i..

Me comentan que existe en Forms 6i una funcion para poder ejecutar tanto create user, como todo lo demas necesario... desde asignarlo a un Rol .. hasta dar privilegios a los roles.... no se si exista....

Agradezco su valiosa ayuda,..- suerte ....

Guillermo Herrera (guille)
26 de Noviembre del 2004
-- alamcenas en una variable :
V_COMANDO := 'CREATE USER ' || LTRIM(RTRIM(nombre_usuarioI)) || ' PROFILE ' || perfil || ' IDENTIFIED BY ' || '"' || PASSW || '"' || ' DEFAULT TABLESPACE USERS ACCOUNT ' || V_BLOQUEADO;
-- y despues ejecutas con :
FORMS_DDL(V_COMANDO);
-- y compruebas con:

IF NOT Form_Success THEN
-- Envias un mensaje que fallo
END IF;


igual para dar permisos con el GRANT...

espero te sirva..............

Javier Figueredo
26 de Noviembre del 2004
La forma de crear usuarios en Forms es con el comando FORMS_DDL(Consulta). Con esto se pueden dar grants y demás.

Yo necesito saber porque el EXECUTE IMMEDIATE no sirve al crear un usuario desde un procedimiento almacenado. Sale que no tiene privilegios suficientes
Cualquier ayuda la agradezco.

Pablo Ponte Miserendino
26 de Noviembre del 2004
No es recomendable crear un usuario desde una pantalla ni desde un stored...para eso esta el DBA....no es una funcion asignada a un usuario comun y se deben tener ciertos provilegios para poder hacerlo...

Rodolfo Reyes
26 de Noviembre del 2004
Creo que la funcion es:

EXECUTE IMMEDIATE ('create user...');

Tambien en lugar de escribir directamente puedes ir concatenando en un variable tipo varchar y luego en el excute immediate poner esta variable.

query := 'Create user '|| :usuario ||' ...'

EXECUTE IMMEDIATE (query);