Hola,
Estoy tratando de diseñar una base de datos en la que los usuarios seleccionan un objeto para compartir con otro usuario.
Esto se almacena en una tabla llamada enviados. funciona así, en la tabla básicamente se registra un
d_user (
U1 quien registra el mensaje) un
c_mess (el objeto a compartir) y un
m_to (
U2 es con quien se quiere compartir), cuando este usuario
U2 registra el mismo objeto para compartir con el usuario
U1 como es el caso de las dos primera filas, cuando se da ese caso los campos
full debería cambiar y pasar por ejemplo a "1"
Mis dudas son:
¿Cómo detectar cuando se dan la condiciones de reciprocidad, como el caso de las dos primeras líneas? Con un where anidado tal vez?
Al estar en la misma tabla no me funciona el TRIGGER, ni siquiera si este llama a una rutina, cosa que si funciona si la rutita actúa sobre otra tabla, si bien los eventos que produce en esta última no provocan el disparo de los TRIGGER que tenga. ¿no tendré mas remedio que crear otra tabla?
Espero haberme explicado bien en esencia lo que intento es con esta base de datos es algo como:
..........Yo estaría dispuesto a comprar algo de a medias contigo si tu estas dispuesto a lo mismo
Gracias
Código MySQL:
Ver original KEY `id_user` (`id_user`),
--
-- Volcado de datos para la tabla `enviados`
--
INSERT INTO `enviados` (`id_sent`, `id_user`, `c_mess`, `m_to`, `full`, `date`) VALUES (1, 1, 2, 3, 0, '2011-09-29 20:47:29'),
(2, 3, 2, 1, 0, '2011-09-29 20:47:29'),
(3, 3, 1, 1, 0, '2011-09-29 18:40:50'),
(4, 1, 2, 3, 0, '2011-09-29 18:40:50');