Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/09/2014, 10:16
millhouse
 
Fecha de Ingreso: septiembre-2014
Ubicación: Colombia
Mensajes: 2
Antigüedad: 9 años, 6 meses
Puntos: 0
Pregunta reiniciar autoincrement

Hola a todos,... tengo una tabla donde se genera un código inteligente mediante autoincrement,...

Código MySQL:
Ver original
  1. CREATE TABLE IF NOT EXISTS `BDAA`.`NUM_REFERENCIAS` (
  2.   `id_linea_numref` TINYINT NOT NULL,
  3.   `id_prenda_numref` TINYINT NOT NULL,
  4.   `id_cons_numref` SMALLINT NOT NULL AUTO_INCREMENT,
  5.   `num_ref_numref` VARCHAR(6) NULL,
  6.   PRIMARY KEY (`id_linea_numref`, `id_prenda_numref`, `id_cons_numref`))
  7. ENGINE = MyISAM

Es así que con insertar el id_linea_numref y id_prenda_numref, el motor genera un consecutivo para ese combo y luego lo inserta concatenado en el campo num_ref_numref mediante un SP generando así un código único cada vez,...

Código MySQL:
Ver original
  1. DELIMITER $$
  2.  
  3. CREATE PROCEDURE add_numreferencia (a tinyint, b mediumint(2))
  4.  
  5. INSERT INTO bdaa.NUM_REFERENCIAS (id_linea_numref, id_prenda_numref)
  6. VALUES (a,b);
  7.  
  8. SET @ref = concat(a,LPAD(b,2,'0'),LPAD(LAST_INSERT_ID(),3,'0'));
  9.  
  10.  
  11. UPDATE bdaa.NUM_REFERENCIAS
  12. set num_ref_numref = @ref
  13. where id_linea_numref =a
  14. and id_prenda_numref= b
  15. and id_cons_numref = LAST_INSERT_ID();
  16.  

Ingresando datos:

Código MySQL:
Ver original
  1. id_linea_numref = 1
  2. id_prenda_numref = 10
  3. id_cons_numref generado = 001
  4. num_ref_numref concatenado = 110001

El problema radica en que por combo solo puedo disponer de 999 números y me gustaría que cuando llegue al último registro permitido comience nuevamente la cuenta en cero... ejemplo

Último num_ref_numref concatenado = 110999
Siguiente num_ref_numref concatenado = 1100001

He consultado en varias partes y no he logrado el resultado deseado,... espero alguien me pueda dar alguna luz para darle solución a este problema,... gracias