Mysql, 原创, 安卓

Android SQLite AUTO_INCREMENT 报错

在开发 Android应用程序使用数据库的时候,发现SQLite 创建表的时候使用AUTO_INCREMENT报错。找了一些资料发现SQLite使用sql语句还是跟Mysql的稍微有点区别的,下面是个在Mysql中使用语句常见表:

CREATE TABLE `adinfo` (
`id` tinyint(4) NOT NULL AUTO_INCREMENT,
`usetime` int(10) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

在使用SQLite创建的时候竟然有很多处错误。

1. AUTO_INCREMENT
修改方法: 将`id` tinyint(4) NOT NULL AUTO_INCREMENT,改为`id` INTEGER PRIMARY KEY AUTOINCREMENT, 同时需要去掉PRIMARY KEY (`id`)

2.ENGINE,DEFAULT CHARSET
修改方式:去掉ENGINE=InnoDB DEFAULT CHARSET=utf8,原因Mysql的数据引擎有很多,而SQLite不分这个, 还有默认字符串编码SQLite里面我暂时没有发现,不知道他有没有设置编码的地方。

(1307)

Related Post