Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

duda con triggers

Estas en el tema de duda con triggers en el foro de Mysql en Foros del Web. ¿se puede hacer un trigger de 1 tabla con un campo específico? Para aclarar mas, expongo un ejemplo. Tengo 1 tabla llamada "obraSocial " con ...
  #1 (permalink)  
Antiguo 13/02/2009, 10:30
 
Fecha de Ingreso: mayo-2003
Ubicación: Tauranga, NZ.
Mensajes: 89
Antigüedad: 20 años, 10 meses
Puntos: 0
Pregunta duda con triggers

¿se puede hacer un trigger de 1 tabla con un campo específico?
Para aclarar mas, expongo un ejemplo.
Tengo 1 tabla llamada "obraSocial " con 2 datos: idObraSocial y nombreOS
Tengo una tabla "paciente" y tiene un campo llamado obraSocialPaciente que es del tipo ENUM (osde, ospla, pami)

¿Se puede hacer en un trigger que cuando agrego un registro a la tabla "obraSocial " se agregue al registro obraSocialPaciente de la tabla "Paciente"? osea, que se le agregue al tipo de dato ENUM

x ej. agrego a la tabla "obraSocial " Fleni
que se agregue en obraSocialPaciente (osde, ospla, pami, Fleni)

si se puede, como podria ser?
Código:
CREATE TRIGGER trigger_paciente_obrasocial AFTER UPDATE ON obrasocial 
   FOR EACH ROW
   INSERT INTO paciente.obraSocial(nombreOS)
   VALUES......¿?
  #2 (permalink)  
Antiguo 13/02/2009, 18:43
 
Fecha de Ingreso: febrero-2009
Mensajes: 36
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: duda con triggers

Cita:
Iniciado por gulp Ver Mensaje
¿se puede hacer un trigger de 1 tabla con un campo específico?
Para aclarar mas, expongo un ejemplo.
Tengo 1 tabla llamada "obraSocial " con 2 datos: idObraSocial y nombreOS
Tengo una tabla "paciente" y tiene un campo llamado obraSocialPaciente que es del tipo ENUM (osde, ospla, pami)

¿Se puede hacer en un trigger que cuando agrego un registro a la tabla "obraSocial " se agregue al registro obraSocialPaciente de la tabla "Paciente"? osea, que se le agregue al tipo de dato ENUM

x ej. agrego a la tabla "obraSocial " Fleni
que se agregue en obraSocialPaciente (osde, ospla, pami, Fleni)

si se puede, como podria ser?
Código:
CREATE TRIGGER trigger_paciente_obrasocial AFTER UPDATE ON obrasocial 
   FOR EACH ROW
   INSERT INTO paciente.obraSocial(nombreOS)
   VALUES......¿?
compañero! no le entiendo eso de "Tengo una tabla "paciente" y tiene un campo llamado obraSocialPaciente que es del tipo ENUM (osde, ospla, pami)
" que es eso de ENUM(osde, ospla,pami)??

en fin! lo que te entiendo es que deseas pasar un dato de una tabla a otra sin q el usuario lo sepa.

este es un ejemplo de una base de datos q sigo desarrollando!! tengo una tabla llamada zapatos y otra llamada audi_zapatos.

la tabla audi_zapatos tiene de campos:
cod_zapato,
tamano,
cantidad,
fecha_ingreso,
fecha_salida

la tabla zapatos lleva:
cod_zapato pk,
tamano pk,
marca,
color,
sexo,
cantidad,
fecha_ingreso,


CREATE
/*!50017 DEFINER = 'root'@'localhost' */
TRIGGER `after_insert_zapa` AFTER INSERT ON `zapatos`
FOR EACH ROW BEGIN
insert into audi_zapatos(cod_zapato,tamano,cantidad,fecha_ingr eso)values(new.cod_zapato,new.tamano,new.cantidad, CURRENT_DATE());

END;
$$

DELIMITER ;

con este triggers copio ciertos datos de la tabla zapatos a la tabla audi_zapatos. espero te sirva!!
y eso es despues del insert! analiza el codigo!! yo lo acabo de hacer y me salio!! jejeje
  #3 (permalink)  
Antiguo 15/02/2009, 16:26
 
Fecha de Ingreso: mayo-2003
Ubicación: Tauranga, NZ.
Mensajes: 89
Antigüedad: 20 años, 10 meses
Puntos: 0
Respuesta: duda con triggers

gracias por la ayuda! se entiende perfecto.
obraSocialPaciente es un campo de la tabla, que es de tipo ENUM
Lo de ENUM(osde, ospla,pami) quiere decir que el tipo de dato contiene los valores osde, ospla y pami por defecto.
Y mi duda es si con un trigger puedo agregarle un valor a ese campo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:46.