web-dev-qa-db-fra.com

Équivalent de la colonne MSSQL IDENTITY dans MySQL

Quel est l'équivalent des colonnes MSSQL IDENTITY dans MySQL? Comment créer cette table dans MySQL?

CREATE TABLE Lookups.Gender
(
    GenderID   INT         IDENTITY(1,1) NOT NULL,
    GenderName VARCHAR(32) NOT NULL
);
26
Allan Chua
CREATE TABLE Lookups.Gender
(
    GenderID   INT         NOT NULL AUTO_INCREMENT,
    GenderName VARCHAR(32) NOT NULL
);
47
Joe Stefanelli
CREATE TABLE `Persons` (
  `ID` int(11) NOT NULL AUTO_INCREMENT,
  `LastName` varchar(255) NOT NULL,
  `FirstName` varchar(255) DEFAULT NULL,
  `Address` varchar(255) DEFAULT NULL,
  `City` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=100 DEFAULT CHARSET=latin1;

Cet exemple ci-dessus utilise le AUTO_INCREMENT syntaxe. Vous pouvez spécifier un décalage de départ spécifique à la table.

L'incrément doit cependant être défini globalement.

SET @@auto_increment_increment=10;

Vous pouvez également définir une valeur par défaut globale pour le décalage comme suit:

SET @@auto_increment_offset=5;

Pour afficher vos valeurs actuelles, tapez SHOW VARIABLES LIKE 'auto_inc%';

6
MojganK