автоинкремент в доступе sql не работает - PullRequest
2 голосов
/ 13 апреля 2010

Как мне создать таблицу с автоинкрементом в доступе. Вот что я делал, но не работал.

CREATE TABLE People_User_Master(  
    Id INTEGER primary key AUTOINCREMENT,
    Name varchar(50),
    LastName varchar(50), 
    Userid varchar(50) unique,
    Email varchar(50),
    Phone varchar(50),
    Pw varchar(50),
    fk_Group int,
    Address varchar(150)  
)

Ответы [ 4 ]

2 голосов
/ 11 мая 2016

Удалить INTEGER (конфликтует с AUTOINCREMENT)

CREATE TABLE People_User_Master(  
Id AUTOINCREMENT primary key ,
Name varchar(50),
LastName varchar(50), 
Userid varchar(50) unique,
Email varchar(50),
Phone varchar(50),
Pw varchar(50),
fk_Group int,
Address varchar(150)  

)

1 голос
/ 13 апреля 2010

Вы можете сделать это, используя IDENTITY (поддерживается Jet4 +)

CREATE TABLE People_User_Master
(
ID IDENTITY (1, 1), 
Name ..

В противном случае;

ID AUTOINCREMENT, 

Должно работать (обратите внимание, вы не указываете тип)

1 голос
/ 13 апреля 2010

Попробуйте добавить ограничение в конце

CREATE TABLE People_User_Master(   
Id AUTOINCREMENT 
  , Name varchar(50)   
, LastName varchar(50)   
, Userid varchar(50) unique   
, Email varchar(50)   
, Phone varchar(50)   
, Pw varchar(50)   
, fk_Group int   
, Address varchar(150)
, CONSTRAINT id_pk PRIMARY KEY(Id)

)

Обновлено, чтобы соответствовать фактическому ответу (определение INTEGER в столбце AUTOINCREMENT было запрещено). Оставление PRIMARY KEY на той же строке, что и Id AUTOINCREMENT, работает.

0 голосов
/ 21 июня 2016

Может работать, но, похоже, не работает при попытке INSERT INTO с идентификатором в предложении Column. Кажется, это переопределяет AUTOINCREMENT MS Access.

Попытка вставить запись с ID = 1 в обход AUTOINCREMENT

INSERT INTO People_User_Master 
       (Id, Name, LastName, Userid, Email, Phone, Pw, fk_Group, Address)
VALUES (1, "John", "Smith", "JS100", "JS@MyMail.Net", 12345678, "****","","")

Пропуск идентификатора позволяет функции AUTOINCREMENT работать правильно.

INSERT INTO People_User_Master 
       (Name, LastName, Userid, Email, Phone, Pw, fk_Group, Address)
VALUES ("John", "Smith", "JS100", "JS@MyMail.Net", 12345678, "****","","")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...