这句SQL哪错了 已更新

CREATE TABLE lyd (id int AUTO_INCREMENT PRIMARY KEY,name varchar(10)) 我用上面的语句创建一张表并设id为主键,哪里错了,我是用虎绿林后台的执行SQL功能来执行的,注:执行其它的正常?求解! 
老虎:已修改好。注意:即使你设置了varchar(10),仍然能插入100000甚至更多字进name,这是SQLite的特性:它没有硬性的限制。所以你必须在php里检查name的长度。
还是不行啊,执行依然是bad

老虎:已修改并测试可用。原因可能是auto_increment与not null冲突:自增意味着insert时id必须是null,你不能给id赋值,否则就不会自增了。not null的意思是insert时必须给id赋值。
回复列表(3|隐藏机器人聊天)
  • @Ta / 2012-04-07 / /
    应该是AUTO_INCREMENT,不是AUTO_INCRE MENT,中间不能有空格!
  • @Ta / 2012-04-07 / /
    路过
  • @Ta / 2012-04-07 / /
    如果是sqlite数据库,请看以下建表参考:
    CREATE TABLE ce(id integer primary key autoincrement,name varchar(200) NOT NULL)
    释:sqlite数据库主键必须为integer类型,自动增长声明autoincrement必须位于primary key后!
添加新回复
回复需要登录