sql >> Base de Datos >  >> RDS >> Mysql

Cómo agregar una columna de incremento automático en una tabla existente en MySQL

Las columnas de Incremento automático aumentan automáticamente su valor a medida que agrega más filas a la tabla. En este artículo, veremos cómo agregar una columna de incremento automático en MySQL.


Cómo agregar una columna de incremento automático

Estos son los pasos para agregar una columna de incremento automático en MySQL. Supongamos que tiene las siguientes ventas (id, monto) mesa.

mysql> create table sales(id int, amount int);

mysql> insert into sales(id,amount) 
       values(1, 100),(4,300),(6,400);

mysql> select * from sales;
+------+--------+
| id   | amount |
+------+--------+
|    1 |    100 |
|    4 |    300 |
|    6 |    400 |
+------+--------+

Ahora, modificaremos el id columna para que se incremente automáticamente, usando ALTER TABLE.

Lectura adicional:Las 5 mejores herramientas gratuitas de diseño de bases de datos

Esta es la sintaxis de la sentencia ALTER TABLE,

ALTER TABLE table_name 
MODIFY column_name INT NOT NULL AUTO_INCREMENT PRIMARY KEY;

En la declaración anterior, debe especificar el table_name y nombre_columna .

Aquí está la instrucción SQL para agregar la restricción AUTO INCREMENT a id columna.

ALTER TABLE sales
MODIFY id INT NOT NULL AUTO_INCREMENT PRIMARY KEY;

A continuación, agregaremos un par de filas en la tabla de ventas.

mysql> insert into sales(amount) values(150),(250);

mysql> select * from sales;
+----+--------+
| id | amount |
+----+--------+
|  1 |    100 |
|  4 |    300 |
|  6 |    400 |
|  7 |    150 |
|  8 |    250 |
+----+--------+

Como puede ver, MySQL aumentó y llenó automáticamente id columna con valores 7 y 8.

Lectura adicional:Cómo encontrar la enésima fila en MySQL

También puede agregar una columna de incremento automático durante la creación de la tabla. Sin embargo, recuerde que la restricción de incremento automático solo se puede asignar a la columna de clave principal.

Esta es la sintaxis para agregar una columna de incremento automático durante la creación de la tabla.

create table table_name(
auto_increment_column_name int not null auto_increment primary key,
column2,
...);

Lectura adicional:Cómo replicar una base de datos MySQL

Aquí hay un ejemplo para agregar una columna de incremento automático en MySQL

mysql> create table sales2(id int not null auto_increment primary key, 
amount int);

mysql> insert into sales2(amount) values(100),(125),(250),(300);

mysql> select * from sales2;
+----+--------+
| id | amount |
+----+--------+
|  1 |    100 |
|  2 |    125 |
|  3 |    250 |
|  4 |    300 |
+----+--------+

Como puede ver arriba, el id la columna se incrementa y rellena automáticamente.


Cómo establecer el valor inicial de incremento automático

De forma predeterminada, el valor de la columna de incremento automático comienza desde 1. Puede cambiar el valor de inicio del incremento automático si lo desea. Aquí está la sintaxis para ello,

alter table table_name AUTO_INCREMENT=increment_value

En la consulta SQL anterior, debe especificar el table_name así como increment_value .

Por ejemplo, aquí está la consulta SQL para establecer el valor de incremento inicial en 100

alter table sales AUTO_INCREMENT=100

Con suerte, el artículo anterior lo ayudará a agregar una columna de incremento automático en la tabla existente en MySQL.

Ubiq facilita la visualización de datos y la supervisión en paneles en tiempo real. Prueba Ubiq gratis.