Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So fügen Sie eine Spalte mit automatischer Inkrementierung in einer vorhandenen Tabelle in MySQL hinzu

Der Wert von Spalten mit automatischer Erhöhung nimmt automatisch zu, wenn Sie der Tabelle weitere Zeilen hinzufügen. In diesem Artikel werden wir uns ansehen, wie man in MySQL eine Auto-Increment-Spalte hinzufügt.


So fügen Sie eine automatische Inkrementspalte hinzu

Hier sind die Schritte zum Hinzufügen einer automatischen Inkrementspalte in MySQL. Angenommen, Sie haben die folgenden Verkäufe (ID, Betrag) Tabelle.

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 |
+------+--------+

Jetzt ändern wir die id Spalte mit ALTER TABLE automatisch inkrementieren.

Bonuslektüre:Top 5 der kostenlosen Datenbankdesign-Tools

Hier ist die Syntax der ALTER TABLE-Anweisung,

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

In der obigen Anweisung müssen Sie den table_name angeben und Spaltenname .

Hier ist die SQL-Anweisung zum Hinzufügen der AUTO INCREMENT-Einschränkung zu id Spalte.

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

Als nächstes fügen wir ein paar Zeilen in die Verkaufstabelle ein.

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

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

Wie Sie sehen können, hat MySQL die id automatisch erhöht und ausgefüllt Spalte mit den Werten 7 und 8.

Bonuslektüre:So finden Sie die N-te Zeile in MySQL

Sie können während der Tabellenerstellung auch eine automatische Inkrementspalte hinzufügen. Denken Sie jedoch daran, dass die Einschränkung für die automatische Erhöhung nur der Primärschlüsselspalte zugewiesen werden kann.

Hier ist die Syntax zum Hinzufügen einer Spalte mit automatischer Inkrementierung während der Tabellenerstellung.

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

Bonuslektüre:Wie man eine MySQL-Datenbank repliziert

Hier ist ein Beispiel für das Hinzufügen einer Auto-Increment-Spalte in 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 |
+----+--------+

Wie Sie oben sehen können, ist die id Spalte wird automatisch inkrementiert und ausgefüllt.


So stellen Sie den Anfangswert für die automatische Erhöhung ein

Standardmäßig beginnt der Spaltenwert für die automatische Erhöhung bei 1. Sie können den Startwert für die automatische Erhöhung ändern, wenn Sie möchten. Hier ist die Syntax dafür,

alter table table_name AUTO_INCREMENT=increment_value

In der obigen SQL-Abfrage müssen Sie den table_name angeben sowie increment_value .

Hier ist zum Beispiel die SQL-Abfrage, um den anfänglichen Inkrementwert auf 100 zu setzen

alter table sales AUTO_INCREMENT=100

Hoffentlich hilft Ihnen der obige Artikel dabei, eine automatische Inkrementspalte in einer vorhandenen Tabelle in MySQL hinzuzufügen.

Ubiq macht es einfach, Daten zu visualisieren und sie in Echtzeit-Dashboards zu überwachen. Testen Sie Ubiq kostenlos.