在MySQL中,什么是MSSQL IDENTITY
列的等效物?我该如何在MySQL中创建这个表?
CREATE TABLE Lookups.Gender
(
GenderID INT IDENTITY(1,1) NOT NULL,
GenderName VARCHAR(32) NOT NULL
);
在MySQL中,什么是MSSQL IDENTITY
列的等效物?我该如何在MySQL中创建这个表?
CREATE TABLE Lookups.Gender
(
GenderID INT IDENTITY(1,1) NOT NULL,
GenderName VARCHAR(32) NOT NULL
);
CREATE TABLE Lookups.Gender
(
GenderID INT NOT NULL AUTO_INCREMENT,
GenderName VARCHAR(32) NOT NULL
);
SQL错误(1075):不正确的表定义;只能有一个自动列,并且必须定义为键。
- mbourgonCREATE 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;
上述示例使用AUTO_INCREMENT
语法。您可以指定特定于表的起始偏移量。
然而,增量必须在全局范围内设置。
SET @@auto_increment_increment=10;
您也可以按以下方式设置偏移量的全局默认值:
SET @@auto_increment_offset=5;
要查看当前值,请键入SHOW VARIABLES LIKE 'auto_inc%';