Ver Mensaje Individual
  #17 (permalink)  
Antiguo 09/06/2009, 14:15
r0xdrig0
 
Fecha de Ingreso: diciembre-2007
Mensajes: 385
Antigüedad: 16 años, 11 meses
Puntos: 0
Respuesta: como hacer este trigger????

Hola amigos, yo aqui aun, no habia posteado antes pq tuve q hacer un viaje por razones de fuierza mayor, aun estoy con el problema del trigger para eliminar al visitante y las visitas hechas al niño antes de eliminar a este; tengo el siguiente trigger y me manda el siguiente error. el trigger es:
Código:
CREATE OR REPLACE FUNCTION eliminar_visitante() returns TRIGGER AS
  
      $$
  
      declare
   
      visitante_rut record;
  
      Begin
  
      SELECT INTO visitante_rut rut_visitante FROM visita WHERE id_nino=old.id_nino;
   
      DELETE FROM visita where id_nino=old.id_nino; 
  
        DELETE FROM visitante WHERE rut_visitante=visitante_rut;
  
      
 
      RETURN old;
  
      End;
 
      $$
 
      LANGUAGE 'plpgsql';
 
       
  
      CREATE TRIGGER borrar_visitante before
  
      DELETE ON nino
 
      FOR each row execute procedure eliminar_visitante();
ese es el trigger en cuestion y me esta mandando el siguiente error:

ERROR: operator does not exist: character varying= record
LINE 1: DELETE FROM visitante WHERE rut_visitante= $1
HINT: no operator matches given name and argument type(s). You may need to add explicit type casts.
QUERY: DELETE FROM visitante WHERE rut_visitante =$1
CONTEXT: PG/pgSQL function "eliminar_visitante" line 12 at SQL statement.

Ese es el error q me manda al ejecutar el trigger y no se pq, si estoy declarando la variable record donde corresponde, pero al parecer no me la reconoce como declarada.... en q estoy fallandoo ahora amigos??? porfavor ruego su ayuda!!!!! me tiene urgidicimo este problema ya q llevo tiempo tratando de resolverlo pero no he podido porefavor amigos guienme plssssssss y disculpen la demora del posteo, pero tuve q hacer un viaje de urgencia y acabo de llegar de antemano gracias... espero me puedan ayudar .... bye bye