ITEEDU

嵌入式关系型SQLite数据库存储数据

在Android平台上,集成了一个嵌入式关系型数据库——SQLite,SQLite3支持NULL、INTEGER、REAL(浮点数字)、TEXT(字符串文本)和BLOB(二进制对象)数据类型,虽然它支持的类型只有五种,但实际上sqlite3也接受varchar(n)、char(n)、decimal(p,s) 等数据类型,只不过在运算或保存时会转成对应的五种数据类型。

 SQLite最大的特点是你可以把各种类型的数据保存到任何字段中,而不用关心字段声明的数据类型是什么。

例如:可以在Integer类型的字段中存放字符串,或者在布尔型字段中存放浮点数,或者在字符型字段中存放日期型值。 

但有一种情况例外:定义为INTEGER PRIMARY KEY的字段只能存储64位整数, 当向这种字段保存除整数以外的数据时,将会产生错误。 

另外,在编写CREATE TABLE 语句时,你可以省略跟在字段名称后面的数据类型信息,如下面语句你可以省略name字段的类型信息:

CREATE TABLE person (personid integer primary key autoincrement, name varchar(20))

SQLite可以解析大部分标准SQL语句,如:

查询语句:select * from 表名where 条件子句group by 分组字句having ...order by 排序子句
如:

select * from person
select * from personorder by iddesc
select namefrom persongroup by namehaving count(*)>1

分页SQL与mysql类似,下面SQL语句获取5条记录,跳过前面3条记录

select * from Account limit5 offset3
 或者
select * from Account limit3,5

插入语句:

insert into 表名(字段列表)values(值列表)

如:

insert into person(name, age)values(‘ITEEDU’,3)

更新语句:

update 表名set 字段名=值where 条件子句

如:

update personset name=‘ITEEDU‘where id=10

删除语句:

delete from 表名where 条件子句

如:

delete from personwhere id=10