Heim >Datenbank >MySQL-Tutorial >So verwenden Sie die Auto-Inkrement-Funktion in MySQL

So verwenden Sie die Auto-Inkrement-Funktion in MySQL

PHPz
PHPzOriginal
2023-04-21 10:12:209016Durchsuche

MySQL ist derzeit eine der beliebtesten Open-Source-Datenbanken. Auch seine leistungsstarken Funktionen und seine Benutzerfreundlichkeit machen es beliebt. Unter diesen ist die automatische Inkrementierung eine der am häufigsten verwendeten Funktionen in MySQL. In diesem Artikel wird vorgestellt, wie MySQL die automatische Inkrementierungsfunktion verwendet.

1. Was ist Auto-Inkrementierung?

Auto-Inkrementierung ist eine automatische Wachstumsfunktion in der MySQL-Datenbank. Wenn in der Tabelle ein Auto-Inkrement-Feld vorhanden ist, wird das Auto-Inkrement-Feld jedes Mal, wenn ein neues Datenelement eingefügt wird, automatisch um 1 erhöht. Durch die automatische Inkrementierung können einige Probleme sehr gut gelöst werden, z. B. die automatische ID-Generierung, die automatische Sequenzgenerierung usw.

2. So legen Sie die automatische Inkrementierung von Feldern fest

Um die automatische Inkrementierung festzulegen, müssen Sie beim Erstellen der Tabelle das Attribut AUTO_INCREMENT zu den relevanten Feldern hinzufügen. Zum Beispiel:

CREATE TABLE user (
id int(11) NOT NULL AUTO_INCREMENT,
name varchar( 30 ) NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;user (
 id int(11) NOT NULL AUTO_INCREMENT,
 name varchar(30) NOT NULL,
 PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

在上面的语句中,我们把id设置为了自增字段,它的类型为int,长度为11。AUTO_INCREMENT选项告诉MySQL,每次插入一条数据时,都自动给id字段赋一个新的值。

在已经创建的表中添加自增字段需要使用 ALTER TABLE 语句。例如:

ALTER TABLE user ADD COLUMN age INT(11) NOT NULL AUTO_INCREMENT AFTER name;

在这个例子中,我们添加了一个名为age的自增字段。注意,添加自增字段时,要确保该字段为NOT NULL。

三、如何插入自增字段

插入自增字段时,我们可以类似于这样:

INSERT INTO user (name) VALUES ('张三');

查询该表可以得出:

SELECT * FROM user;

id name
1 张三

可以看到,即使我们在语句中没有给id赋值,id字段也自动递增了。这是因为字段属性中有 AUTO_INCREMENT。这个属性告诉MySQL,当向该表中插入数据时,MySQL会自动为id字段赋一个唯一的值,使其自动递增。

如果我们再插入一条数据,如下:

INSERT INTO user (name) VALUES ('李四');

查询该表可以得出:

SELECT * FROM user

In der obigen Anweisung legen wir die ID als automatische Inkrementierung fest Feld, sein Typ ist int und die Länge ist 11. Die Option AUTO_INCREMENT weist MySQL an, dem ID-Feld jedes Mal automatisch einen neuen Wert zuzuweisen, wenn ein Datenelement eingefügt wird. Um ein Auto-Inkrement-Feld zu einer bereits erstellten Tabelle hinzuzufügen, müssen Sie die ALTER TABLE-Anweisung verwenden. Zum Beispiel: 3. So fügen Sie ein Auto-Inkrement-Feld einBeim Einfügen eines Auto-Inkrement-Felds können wir so aussehen: SELECT * FROM user;idname
ALTER TABLE user ADD COLUMN age INT(11) NOT NULL AUTO_INCREMENT AFTER name; In diesem Beispiel fügen wir hinzu Es wird ein automatisch inkrementiertes Feld mit dem Namen „Alter“ erstellt. Beachten Sie, dass beim Hinzufügen eines Felds mit automatischer Inkrementierung darauf geachtet werden muss, dass das Feld NICHT NULL ist.
INSERT INTO user (name) VALUES ('Zhang San '); Das Abfragen dieser Tabelle kann Folgendes erhalten:

1

    张三
  1. Sie können sehen, dass das ID-Feld automatisch inkrementiert wird, auch wenn wir der ID in der Anweisung keinen Wert zuweisen. Dies liegt daran, dass in den Feldeigenschaften AUTO_INCREMENT vorhanden ist. Dieses Attribut teilt MySQL mit, dass MySQL beim Einfügen von Daten in die Tabelle dem ID-Feld automatisch einen eindeutigen Wert zuweist, sodass dieser automatisch erhöht wird.
Wenn wir ein weiteres Datenelement wie folgt einfügen:

INSERT INTO user (name) VALUES ('李思');

Durch Abfragen der Tabelle können wir get: 🎜🎜SELECT * FROM user;🎜🎜🎜🎜🎜id🎜🎜name🎜🎜🎜🎜🎜🎜1🎜🎜张三🎜🎜🎜🎜2🎜🎜李思🎜🎜 🎜🎜🎜 Sie können es jetzt ansehen, die ID wird automatisch wieder auf 2 erhöht. 🎜🎜4. Einschränkungen von Feldern mit automatischer Inkrementierung🎜🎜Bei der Verwendung von Feldern mit automatischer Inkrementierung müssen wir auch einige Einschränkungen der automatischen Inkrementierung verstehen: 🎜🎜🎜Felder mit automatischer Inkrementierung können nur ganzzahlige Typen sein, keine Dezimalzahlen, Text usw . . 🎜🎜Der Wert des Felds für die automatische Inkrementierung ist in der Tabelle eindeutig, d. h. es kann nur ein Feld für die automatische Inkrementierung in einer Tabelle geben, und es kann nur ein PRIMÄRSCHLÜSSEL oder ein EINZIGARTIGER SCHLÜSSEL sein. 🎜🎜Sobald ein Auto-Inkrement-Feld verwendet wird, kann es nicht mehr neu gestaltet werden, da sonst Probleme wie Datenverlust auftreten. 🎜🎜🎜5. Zusammenfassung🎜🎜Auto-Inkrementierung ist eine häufig verwendete Funktion im MySQL-Tabellendesign und kann auch einige Probleme in der tatsächlichen Entwicklung gut lösen. In diesem Artikel wird beschrieben, wie MySQL über das Attribut „Auto_Inkrement“ Felder mit automatischer Inkrementierung generiert und wie Felder mit automatischer Inkrementierung verwendet werden, um beim Einfügen von Daten Sequenzwerte zu erhöhen. Gleichzeitig müssen wir auch auf die Einschränkungen von Feldern mit automatischer Inkrementierung und einige Vorsichtsmaßnahmen achten. 🎜

Das obige ist der detaillierte Inhalt vonSo verwenden Sie die Auto-Inkrement-Funktion in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn