Ver Mensaje Individual
  #2 (permalink)  
Antiguo 15/04/2014, 01:47
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: Trigger no permite guardar datos en tabla

Habria que trasladar este post a mysql, vaya he supuesto que usas mysql....

'Insertar', CURRENT_USER( ) , host, NOW( ) , 'Inmueble'

Los delimitadores en lo que sean strings son obligatorios....

Código MySQL:
Ver original
  1. DROP TRIGGER IF EXISTS `Bitac_Inmu_Insert` ;
  2.  
  3. DELIMITER $$;
  4. CREATE TRIGGER `Bitac_Inmu_Insert` AFTER INSERT ON `inmuebles`
  5. FOR EACH ROW INSERT INTO bitacora( operacion, usuario, host, modificado, tabla ) VALUES ('Insertar', CURRENT_USER( ) , host, NOW( ) , 'Inmueble');
  6. $$
  7. DELIMITER ;

Creo....

Ten en cuenta que CURRENT_USER( ) será el usuario actual logueado en el servidor de bases de datos... no forzosamente será el mismo que se haya logueado en la aplicación.... Por "host" esperas la maquina des de donde se ha conectado ese usuario.... si la aplicación es php es muy facil que siempre sea el mismo usuario y la maquina siempre sea localhost (es decir la misma donde corre el servidor de bbdd)


Esto igual te sirve....

http://tavoberry.com/blog/crear-una-bitacora-en-mysql/
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 15/04/2014 a las 01:57