MySQL - Insert en dos bases, Es muy importante

 
Vista:

Insert en dos bases, Es muy importante

Publicado por Ramiro (5 intervenciones) el 03/10/2008 14:51:37
Hola a todos,
Como soy nuevo en MySQL hay cosas que todavia no se si pueden hacer. Les paso mi duda.
El tema es asi: Yo tengo dos Bases de datos en el mismo servidor PruebasDB y la otra AuditDB. En la Base PruebasDB yo tengo una Tabla llamada Actividades y en la base AuditDB una tabla llamada Audit_Actividades.
Lo que quiero hacer es crear un Triggers en la tabla Actividades de PruebasDB y que el triggers guarde ciertos datos en la Tabla Audit_Actividades de la base AuditDB.

Yo se como crear un trigger, pero nose como referenciarlo a la Tabla de la Base AuditDB
Mi trigger seria el siguiente:

INSERT INTO [ referenia a Base AuditDB y Tabla Audit_Actividades ] (Fecha, Hora, Tabla, Usuario, DscActividad, CodActividad,Evento)
VALUES (CURDATE(),CURTIME(),'Actividades', CURRENT_USER, NEW.DscActividad, NEW.CodActividad,'I');

que tendria que poner en [ referenia a Base AuditDB y Tabla Audit_Actividades ] para que guarde los datos en la tabla Audit_Actividades?

Desde ya muchas gracias
Me han ayudado mucho a aprender mysql.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Insert en dos bases, Es muy importante

Publicado por Emiliano (98 intervenciones) el 04/10/2008 00:56:57
Hola esta es mi primera respuesta en este foro yo que vos probaria esto ,

//-----------------------------------------------------------------------------------------------------------------------
DELIMITER //

CREATE TRIGGER actividades AFTER INSERT ON PruebasDB.Actividades

FOR EACH ROW

BEGIN

INSERT INTO AuditDB.Audit_Actividades (Fecha, Hora, Tabla, Usuario, DscActividad, CodActividad,Evento)
VALUES (CURDATE(),CURTIME(),'Actividades', CURRENT_USER, NEW.DscActividad, NEW.CodActividad,'I');

END;//
DELIMITER ;
//-----------------------------------------------------------------------------------------------------------------------

O sea a lo que voy es que cuando creas el trigger le pasa en que tabla se ejecuta y simplemente para insertar un dato en la otra tabla es 'base'.'tabla' masomenos perecido cuando haces consultas entre dos tablas como esto

SELECT tabla1.col1,tabla2.col2 FROM tabla1,tabla2 WHERE tabla1.col1=tabla2.col AND
tabla1.col1='Pepe';

Acordate que el el parametro en el Trigger ' NEW.col1 ' es el dato que se esta insertando en la tabla actividades y los podes insirtar en la tabla Audit_Actividades.

Espero que te sirva y decime si te anduvo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Insert en dos bases, Es muy importante

Publicado por Ramrio (5 intervenciones) el 04/10/2008 18:57:40
anda perfecto

Gracias Emiliano
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar