¿Cómo agrego auto_increment
a una columna existente de una tabla MySQL?¿Cómo agregar AUTO_INCREMENT a una columna existente?
Respuesta
Creo que desea MODIFY
la columna como se describe para el ALTER TABLE
command. Podría ser algo como esto:
ALTER TABLE t1 MODIFY b INTEGER NOT NULL AUTO_INCREMENT;
Alter table table_name modify column_name datatype(length) AUTO_INCREMENT PRIMARY KEY
Usted debe agregar la clave principal de incremento automático, de lo contrario se ha obtenido un error en MySQL.
¡¡Genial ... !!! Funciona bien....!!! –
Esto funcionó para mí en caso de que desee cambiar AUTO_INCREMENT-atributo para un no-vacío-tabla:
1.) Exportados toda la tabla como archivo .sql
2.) borró la mesa después de exportación
2.) ¿Cambió necesaria al mando CREATE_TABLE
3.) ejecuta el CREATE_TABLE y comandos INSERT_INTO del sql-archivo
... et Viola
simplemente basta con añadir restricción aUTO_INCREMENT en la columna o mODIFICAR cOLUMNA : -
ALTER TABLE `emp` MODIFY COLUMN `id` INT NOT NULL UNIQUE AUTO_INCREMENT FIRST;
O agregar una columna primero y luego cambiar de columna como -
1. Alter TABLE `emp` ADD COLUMN `id`;
2. ALTER TABLE `emp` CHANGE COLUMN `id` `Emp_id` INT NOT NULL UNIQUE AUTO_INCREMENT FIRST;
Este código funciona para mí, ¡gracias! – denis
método para agregar AUTO_INCREMENT a una mesa con los datos evitando al mismo tiempo “Entrada duplicada” error:
Haga una copia de la tabla con los datos utilizando INSERT SELECT:
datosCREATE TABLE backupTable LIKE originalTable; INSERT backupTable SELECT * FROM originalTable;
Eliminar en originalTable (para eliminar entradas duplicadas):
TRUNCATE TABLE originalTable;
Para añadir AUTO_INCREMENT y clave principal
ALTER TABLE originalTable ADD id INT PRIMARY KEY AUTO_INCREMENT;
Copiar datos de nuevo a originalTable (ver no incluyen la columna recién creada (id), ya que será automática y poblada)
INSERT originalTable (col1, col2, col3) SELECT col1, col2,col3 FROM backupTable;
Eliminar backupTable:
DROP TABLE backupTable;
Espero que esto sea útil!
Más sobre la duplicación de tablas utilizando Crear como:
Usado hoy en día - excelente solución. – Ducain
Si tiene una tabla grande ... o si desea hacer cosas un poco más inteligentes, reemplace el paso 1 con: CREATE TABLE backupTable LIKE originalTable; RENAME TABLE originalTable TO originalTable.old, backupTable TO originalTable; Omita el paso 2 o perderá todos sus datos. –
logré hacer esto con el siguiente código:
ALTER TABLE `table_name`
CHANGE COLUMN `colum_name` `colum_name` INT(11) NOT NULL AUTO_INCREMENT FIRST;
Esta es la única manera de que pudiera hacer una columna autoincremento.
INT (11) muestra que la longitud int máxima es 11, puede omitirla si lo desea.
- 1. Agregar una identidad a una columna existente
- 2. cómo agregar una nueva columna a una hoja existente
- 3. ¿Cómo puedo agregar una columna a una tabla existente?
- 4. ¿Cómo agregar un valor predeterminado a una columna ya existente?
- 5. Agregar una columna entera a una tabla mysql existente basada en la columna existente
- 6. Cómo agrego auto_increment a una columna en SQL Server 2008
- 7. Mysql - Agregar auto_increment a la clave principal
- 8. cómo encontrar "agujeros" en la columna auto_increment?
- 9. SQL Agregar clave externa a la columna existente
- 10. ¿Cómo puedo saber si una columna es auto_increment en mysql?
- 11. Cómo agregar una columna adicional a Fiddler
- 12. Cómo agregar una nueva columna con valor a la tabla de datos existente?
- 13. cómo agregar una nueva columna a la clave primaria compuesta existente
- 14. ¿Cómo agregar un comentario a una columna de tabla existente en SQL Server?
- 15. Cómo agregar una nueva columna a un almacenamiento de tabla azul existente
- 16. Agregar una columna a una tabla existente en una migración de Rails
- 17. Consulta SQL para agregar una nueva columna después de una columna existente en SQL Server 2005
- 18. Agregar UINavigationController a UIViewController existente
- 19. ¿Hay alguna manera de agregar una columna a una vista existente en mysql?
- 20. ¿Cómo agregar altura a la altura existente?
- 21. MySql no puede hacer la columna auto_increment
- 22. sharepoint: Agregar una columna de sitio existente al tipo de contenido existente Programaticamente
- 23. Cómo agregar un proyecto existente a Geany
- 24. QListVer cómo agregar una columna?
- 25. Agregar no nulo Columna en la tabla existente en SQL
- 26. Cómo agregar 1 al valor de una columna de una fila existente en mysql
- 27. ¿Cómo agregar un Clojure REPL a una aplicación .NET existente?
- 28. ¿Cómo agregar un botón a una hoja de UIActionSheet existente?
- 29. cómo agregar zlib a una instalación de qt existente
- 30. Objetivo C - ¿Cómo agregar un método a una clase existente?
También podría querer incluir el valor actual de la columna como un desplazamiento, por ejemplo 'ALTER TABLE tbl AUTO_INCREMENT = 100;' – Phil
Si ya tiene valores en la tabla, probablemente obtenga un error duplicado para el valor 1. Para cambiar el valor de AUTO_INCREMENT, la tabla debe estar utilizando el motor MyISAM. Vaya a las propiedades de la tabla, cambie el motor de decir InnoDB a MyISAM, luego cambie el valor de AUTO_INCREMENT a lo que sea siguiente en su secuencia. Una vez que aplique esos cambios, puede volver a cambiar el motor a lo que sea que esté usando. – sday