Cita:
Iniciado por yuo2
Código SQL:
Ver originalSET SERVEROUTPUT ON
DECLARE
v_usuario VARCHAR(10);
BEGIN
SELECT username INTO v_usuario FROM dba_users WHERE username=&idusuario;
DBMS_OUTPUT.PUT_LINE('El user consultado es: '|| v_usuario );
END;
quiero ingresar un valor con &idusuario y que este luego pase a mi variable v_usuario. Finaliza en un mensaje indicando que el usuario consultado es ..
Me arroja el siguiente error:
ORA-06550: line 4, column 66:
PL/SQL: ORA-00904: "CTXSYS": invalid identifier
ORA-06550: line 4, column 5:
PL/SQL: SQL Statement ignored
06550. 00000 - "line %s, column %s:\n%s"
*Cause: Usually a PL/SQL compilation error.
*Action:
Al ser un valor VARCHAR2, se requiere que vaya dentro de ''.
Adicional, debes poner un exception en caso de que no exista el valor. De lo contrario, te saltaría un error NO_DATA_FOUND.
Prueba esto
Código SQL:
Ver originalDECLARE
v_usuario VARCHAR(10);
BEGIN
SELECT username INTO v_usuario FROM dba_users WHERE username='&idusuario';
DBMS_OUTPUT.PUT_LINE('El user consultado es: '|| v_usuario );
EXCEPTION WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE('El user no existe');
END;