我试图在终端的sqlite3上创建一个表。命令是这样的。
CREATE TABLE test (
id int not null auto_increment primary key ,
col2 varchar(25) not null ,
col2 varchar(40) not null ,
col3 varchar(20) not null ,
col4 float not null
) engine = MYISAM ;
我不断得到 Error: near "auto_incement": syntax error
但我找不到它。任何修复它的建议将是非常有用的.谢谢你的时间。
你的语法是错误的。关键字应该是 AUTOINCREMENT
而不是 AUTO_INCREMENT
而且只有当您将该列定义为 INTEGER PRIMARY KEY
. 但你也不需要 AUTOINCREMENT
的定义中。
id INTEGER PRIMARY KEY
通过将列定义为 integer primary key
它也会自动递增。如果您使用关键字 AUTOINCREMENT
的定义中。
id INTEGER PRIMARY KEY AUTOINCREMENT
那么这一列中的数值 id
将永远不会被重复使用(所以在删除一行后,id会有空白)。当然,没有必要使用 NOT NULL
因为你定义了一个主键,而SQLite不支持定义一个存储引擎(像MySql那样)。所以把你的语句改成这样。
CREATE TABLE test (
id integer primary key ,
col1 varchar(25) not null ,
col2 varchar(40) not null ,
col3 varchar(20) not null ,
col4 float not null
);