JavaDB: ¿Es posible cambiar el desplazamiento de incremento automático en la tabla existente?

votos
1

¿Es posible cambiar el desplazamiento de autoincremento en una tabla preexistente con JavaDB?

Tengo un problema donde la inserción de nuevos registros por lo general (pero no siempre) falla con un error al quejarse sobre el uso de una clave existente (mi columna de incremento automático). Para poblar esta base de datos, tomé un volcado de otra base de datos (MySQL) y utilicé un procedimiento almacenado JavaDB para insertarlos todos en la tabla JavaDB correspondiente. Mi teoría es que al insertar estos registros copié los ID existentes de la tabla MySQL. Ahora la funcionalidad de autoincremento distribuye los ID existentes. Me imagino que establecer explícitamente el desplazamiento en algún número alto permitirá que el incremento automático vuelva a funcionar.

Publicado el 09/12/2008 a las 22:47
fuente por usuario
En otros idiomas...                            


2 respuestas

votos
1

Incluso si no es una respuesta directa a la pregunta: ¿Con MySQL, que puede hacer una

ALTER TABLE my_little_table AUTO_INCREMENT =2000

para establecer el valor de incremento automático.

Respondida el 19/11/2010 a las 14:18
fuente por usuario

votos
0

No sé cómo cambiar directamente el desplazamiento, pero logré solucionarlo de la siguiente manera:

  1. Cambiar el monto del incremento por X (1 millón en mi caso).
  2. Insertar un registro ficticio.
  3. Reduciendo la cantidad de incremento de nuevo a 1.
  4. Borrando el registro ficticio.

Utilicé esta declaración SQL para cambiar el monto del incremento:

ALTER TABLE tbl ALTER COLUMN col SET INCREMENT BY x
Respondida el 09/12/2008 a las 23:42
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more