2013-03-03 97 views
1
CREATE TABLE mytable(
    id INTEGER, 
    name CHAR(30) NOT NULL, 
    PRIMARY KEY (id) 
); 

此處id不一定自動增量。那麼我該如何強迫它這樣做呢?如何強制id自動增加

使用SQL精簡版

+0

您使用的是什麼SQL引擎? – 2013-03-03 01:05:33

+0

我目前正在使用sqlite。 – OneZero 2013-03-03 01:06:15

+1

哦,你應該在你的帖子中提到...... – 2013-03-03 01:06:43

回答

1
CREATE TABLE mytable(
    id INTEGER PRIMARY KEY AUTOINCREMENT, 
    name CHAR(30) NOT NULL, 
); 

0

如果你正在使用MySQL,你將要使用AUTO_INCREMENT,如:

CREATE TABLE mytable(
    id INT auto_increment, 
    name CHAR(30) NOT NULL, 
    PRIMARY KEY (id) 
) 

如果您使用的是Microsoft SQL,使用IDENTITY,如:

CREATE TABLE mytable(
    id INT IDENTITY, 
    name CHAR(30) NOT NULL, 
    PRIMARY KEY (id) 
) 

編輯:由於您使用SQL Lite,請看看這個:http://www.sqlite.org/autoinc.html

+0

實際上'id INT IDENTITY'是MS SQL Server中的語法,我認爲INT也適用於MySQL。 – 2013-03-03 01:09:34

+0

啊,很好,只是改變了它。我只是複製/粘貼他的和添加的身份 – 2013-03-03 01:11:32

0

如果你正在使用SQLite的SQL-Server一起使用IDENTITY

CREATE TABLE mytable(
    id INTEGER IDENTITY(1,1), 
    name CHAR(30) NOT NULL, 
    PRIMARY KEY (id) 
); 

DEMO

+0

對於Sql-Lite:http://www.sqlite.org/faq.html#q1 – 2013-03-03 01:15:34