SQL identity не работает

Пробую создать таблицу с полем id с атрибутом identity, но постоянно выскакивает ошибка. Что я делаю не так?

CREATE TABLE Organisation (
EmployeeID INT IDENTITY(1,1),
EmployeeName varchar(30) NOT NULL,
EmployeeDepartment varchar(30) NOT NULL,
ProjectDirection varchar(30) NOT NULL,

CONSTRAINT PK_Organisation PRIMARY KEY (EmployeeID),
CONSTRAINT UQ_Organisation_EmployeeName UNIQUE (EmployeeName)
);

Текст ошибки

Error Code: 1064. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IDENTITY(1,1), EmployeeName varchar(30) NOT NULL, EmployeeDepartment varchar(3' at line 2


Ответы (1 шт):

Автор решения: Anton Shchyrov

В MySQL нет команды IDENTY. Вместо нее есть ключевое слово AUTO_INCREMENT вместе с модификатором NOT NULL. Таким образом команда создания таблицы должна быть такой:

CREATE TABLE Organisation (
EmployeeID INT NOT NULL AUTO_INCREMENT,
EmployeeName varchar(30) NOT NULL,
EmployeeDepartment varchar(30) NOT NULL,
ProjectDirection varchar(30) NOT NULL,

CONSTRAINT PK_Organisation PRIMARY KEY (EmployeeID),
CONSTRAINT UQ_Organisation_EmployeeName UNIQUE (EmployeeName)
);
→ Ссылка