Ver Mensaje Individual
  #5 (permalink)  
Antiguo 14/07/2014, 12:26
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: triggers para muchas tablas

Cita:
Alguna idea de lo que puede ser ?
Facilísimo: Estás indicando en todos los casos 5 campos en el INSERT INTO, y poniendo 25(¡veinticinco!) valores en el VALUES...
No ha modo que eso funcione.
Una de dos: O no indicas qué campos ingresarás, y te remites a poner los valores en el orden de los campos de la tabla; o bien pones los 25 campos en el INSERT INTO, en su orden correcto...
Código MySQL:
Ver original
  1. CREATE TRIGGER `bitacorainsert` AFTER INSERT ON `ps_address`
  2.  insert into bitacora(
  3.     host,
  4.     usuario,
  5.     operacion,
  6.     modificado,
  7.     tabla)
  8.     -- 5 campos
  9.     new.id_address,
  10.     new.id_country,
  11.     new.id_state,
  12.     new.id_customer,
  13.     new.id_manufacturer,
  14.     new.id_supplier,
  15.     new.id_warehouse,
  16.     new.alias,
  17.     new.company,
  18.     new.lastname,
  19.     new.firstname,
  20.     new.address1,
  21.     new.address2,
  22.     new.postcode,
  23.     new.city,
  24.     new.other,
  25.     new.phone,
  26.     new.phone_mobile,
  27.     new.vat_number,
  28.     new.dni,
  29.     new.date_add,
  30.     new.date_upd,
  31.     new.active,
  32.     new.deleted,
  33.     now());
  34.     -- 25 valores
  35.  
  36. CREATE TRIGGER `delete_ps_adress` AFTER DELETE ON `ps_address`
  37.     INSERT into bitacora(
  38.         host,
  39.         usuario,
  40.         operacion,
  41.         modificado,
  42.         tabla)
  43.         -- 5 campos
  44.     values(
  45.         old.id_address,
  46.         old.id_country,
  47.         old.id_state,
  48.         old.id_customer,
  49.         old.id_manufacturer,
  50.         old.id_supplier,
  51.         old.id_warehouse,
  52.         old.alias,
  53.         old.company,
  54.         old.lastname,
  55.         old.firstname,
  56.         old.address1,
  57.         old.address2,
  58.         old.postcode,
  59.         old.city,
  60.         old.other,
  61.         old.phone,
  62.         old.phone_mobile,
  63.         old.vat_number,
  64.         old.dni,
  65.         old.date_add,
  66.         old.date_upd,
  67.         old.active,
  68.         old.deleted,
  69.         now());
  70.         -- 25 valores
  71.        
  72.  
  73. CREATE TRIGGER `update_ps_address` AFTER UPDATE ON `ps_address`
  74. insert into bitacora(
  75.     host,
  76.     usuario,
  77.     operacion,
  78.     modificado,
  79.     tabla)
  80.     -- 5 Campos
  81.     OLD.id_address,
  82.     old.id_country,
  83.     old.id_state,
  84.     old.id_customer,
  85.     old.id_manufacturer,
  86.     old.id_supplier,
  87.     old.id_warehouse,
  88.     old.alias,
  89.     old.company,
  90.     old.lastname,
  91.     old.firstname,
  92.     old.address1,
  93.     old.address2,
  94.     old.postcode,
  95.     old.city,
  96.     old.other,
  97.     old.phone,
  98.     old.phone_mobile,
  99.     old.vat_number,
  100.     old.dni,
  101.     old.date_add,
  102.     old.date_upd,
  103.     old.active,
  104.     old.deleted,
  105.     now());
  106.     -- 25 valores
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)