29

MySQLのMSSQLIDENTITY列に相当するものは何ですか?MySQLでこのテーブルを作成するにはどうすればよいですか?

CREATE TABLE Lookups.Gender
(
    GenderID   INT         IDENTITY(1,1) NOT NULL,
    GenderName VARCHAR(32) NOT NULL
);
4

2 に答える 2

53
CREATE TABLE Lookups.Gender
(
    GenderID   INT         NOT NULL AUTO_INCREMENT,
    GenderName VARCHAR(32) NOT NULL
);
于 2012-04-23T15:46:10.357 に答える
7
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;

上記の例では、AUTO_INCREMENT構文を使用しています。テーブルに固有の開始オフセットを指定できます。

ただし、増分はグローバルに設定する必要があります。

SET @@auto_increment_increment=10;

次のように、オフセットのグローバルデフォルトを設定することもできます。

SET @@auto_increment_offset=5;

現在の値を表示するには、次のように入力しますSHOW VARIABLES LIKE 'auto_inc%';

于 2014-01-21T00:07:47.013 に答える