!Registra tu dominio ya!


Respuesta
  #1 (permalink)  
Antiguo 20-May-2010, 07:22
SrJacob
Guest
 
Mensajes: n/a
Smile Modificar un Campo Id con Auto_increment

Bueno este problema redica en que tienes ya una tabla con datos por ejemplo:
tienes la tabla con la siguiente estructura

Código:
+--------+--------------+------+-----+---------+-------+
| Field  | Type         | Null | Key | Default | Extra |
+--------+--------------+------+-----+---------+-------+
| id     | int(11)      | NO   | PRI |         |       |
| nombre | varchar(255) | NO   |     |         |       |
| valor  | varchar(10)  | NO   |     |         |       |
| fecha  | date         | NO   |     |         |       |
| numero | tinyint(1)   | NO   |     |         |       |
+--------+--------------+------+-----+---------+-------+
y ya contiene datos en ella, pero luego se te presenta un caso en donde hubieras deseado poner el campo id
contenga la propiedad de autoincrementarse, pero ya contiene muchos datos,
a este problema se me presento dos soluciones;

-La primera era crear una tabla identica a la que mostramos en este ejemplo, claro esta esta vez con el campo id con la propiedad auto_increment
y luego tenemos que migrar los datos de la tabla antigua a la nueva, eliminar la antigua y cambiar de nombre a la tabla nueva para que reemplaze a la antigua pero esta vez con la estructura que deseamos.

-La segunda es la menos tediosa lo que hacemos es primero ver el valor del id de la ultima tupla insertada
Código:
select max (id) from tabla_test
luego teniendo este valor por ejemplo ID=1345 realizamos lo siguiente:

Código:
ALTER TABLE tabla_test MODIFY COLUMN id INTEGER UNSIGNED NOT 
NULL AUTO_INCREMENT, AUTO_INCREMENT = 1346;
seteando nuestro increment para que comience con valor mas alto registrado mas uno
con estas dos soluciones ya tenemos nuestro campo ID con la propiedad auto_increment
Responder Citando
 
Respuesta

Etiquetas
auto_increment, campo id, mysql

Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder mensajes
No puedes subir archivos adjuntos
No puedes editar tus mensajes

Los Códigos BB están Activado
Las Caritas están Activado
[IMG] está Activado
El Código HTML está Desactivado
Trackbacks are Activado
Pingbacks are Activado
Refbacks are Activado