Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/05/2012, 08:23
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Tipo no reconocido en SP

Tengo in problema que no logro entender y resolver.
Como contexto: Lo estoy trabajando con el Oracle 11g Express, y toda a documentación que encuentro me dice que está bien escrito, sin embargo cuando intento compilarlo, declara un error diciendo que se encontró el símbolo "T_EMPLOY", donde espera := . % (.
Sin embargo la declaración de TYPE se toma correctamente.
¿Por qué no reconoce el tipo? ¿Qué hay que corregir?

Código SQL:
Ver original
  1. CREATE OR REPLACE PROCEDURE "IniciarTabla" IS
  2. BEGIN
  3.     TYPE t_employ IS TABLE OF EMPLOYEES%ROWTYPE;
  4.     t_row t_employ;
  5.     SELECT *
  6.     BULK COLLECT INTO t_row
  7.         FROM EMPLOYEES;
  8.  
  9.     FORALL i IN t_row.FIRST .. t_row.LAST
  10.     UPDATE EMPLOYEES SET BAJA = SYSDATE;
  11.  
  12.     FORALL i IN t_row.FIRST .. t_row.LAST
  13.     INSERT INTO EMPLOYEES(
  14.         EMPLOYEE_ID,
  15.         FIRST_NAME,
  16.         LAST_NAME,
  17.         EMAIL,
  18.         PHONE_NUMBER,
  19.         HIRE_DATE,
  20.         JOB_ID,
  21.         SALARY,
  22.         COMMISSION_PCT,
  23.         MANAGER_ID,
  24.         DEPARTMENT_ID)
  25.     VALUES(
  26.         EMPLOYEES_SEQ.NEXTVAL,
  27.         i.FIRST_NAME,
  28.         i.LAST_NAME,
  29.         i.EMAIL,
  30.         i.PHONE_NUMBER,
  31.         SYSDATE,
  32.         i.JOB_ID,
  33.         i.SALARY
  34.         i.COMMISSION_PCT,
  35.         i.MANAGER_ID,
  36.         i.DEPARTMENT_ID);
  37.     COMMIT;
  38. END;
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)