Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/12/2014, 16:03
Avatar de hdionicio
hdionicio
 
Fecha de Ingreso: enero-2012
Ubicación: Huánuco, Perú
Mensajes: 10
Antigüedad: 12 años, 3 meses
Puntos: 0
Creación de codigos automaticos con TRIGGER

Estoy intentando generar un codigo automatico con TRIGGER, deseo generar el codigo usando el ID de la tabla que es auto_increment.

Anexo codigo de la tabla.

Código MySQL:
Ver original
  1. -- ----------------------------
  2. -- Table structure for boletin_valorizacion
  3. -- ----------------------------
  4. DROP TABLE IF EXISTS `boletin`;
  5. CREATE TABLE `boletin` (
  6.   `id_boletin` int(11) NOT NULL AUTO_INCREMENT,
  7.   `emp_codigo` varchar(10) NOT NULL,
  8.   `numero` int(11) NOT NULL,
  9.   `periodo` varchar(200) NOT NULL,
  10.   `codigo_bol` varchar(24) DEFAULT NULL,
  11.   PRIMARY KEY (`id_boletin`)


Valores.

Código MySQL:
Ver original
  1. -- ----------------------------
  2. -- Records of boletin
  3. -- ----------------------------
  4. INSERT INTO `boletin` VALUES ('1', 'MITSU', '2', 'NOV2014', null);
  5. INSERT INTO `boletin` VALUES ('2', 'MITSU', '3', 'DIC2014', null);
  6. INSERT INTO `boletin` VALUES ('3', 'MITSU', '4', 'DIC2015', null);

En codigo_bol el trigger debe registrar BM0000001, BM0000002, BM0000003

Anexo código del trigger.

Código MySQL:
Ver original
  1. USE `db1`;
  2.  
  3. DELIMITER $$
  4.  
  5.  
  6. DEFINER=`root`@`localhost`
  7.  
  8. TRIGGER `db1`.`codigo_boletin`
  9.  
  10. AFTER INSERT ON `db1`.`boletin`
  11.  
  12. SET NEW.codigo_bol = LPAD(id_boletin,9,'BM000000')
  13. END$$
  14. DELIMITER;



Agradezco de antemano su ayuda.