您的位置:首页 > 移动开发 > Android开发

【Android】SQLite数据库实用说明

2017-03-04 17:02 134 查看
SQLite内部只支持NULLINTEGERREAL(浮点数),TEXT(字符串文本)BLOB(二进制对象) 5种。但是实际上,SQLite也接受varchar(n),char(n),decimal(p,s)等数据类型,只不过运算或保存时候会转换成上面对应的数据类型。

SQLite最大的特点是可以把各种类型的数据保存到任何字段种,而不用关心字段声明的数据类型是什么。不过,有一种情况例外:定义为INTEGER PRIMARY KEY的字段只能存储64位整数,当向这种字段保存除了整数以外的数据时候,SQLite会产生错误。

由于SQLite允许存入数据时忽略底层数据列实例的数据类型,因此SQLite在解析建表语句时,会忽略建表语句种跟在字段名后面的数据类型信息,如下面语句将会忽略name字段的类型信息:create table person_tb(id interger primary key autoncrement,name varchar(20)),因此在编写建表语句的时候省略数据列后面的类型声明。

SQLite允许实用SQL语句操作数据库中的数据,但SQLite数据库不需要安装、启动服务进程,其底层只是一个数据库文件。本质上看,SQLite数据库的操作方式只是一种更为便捷的文件操作。常见的SQL标准语句示例如下:

查询语句: select from表明 where条件子句group by分组子句 having…by排序子句

select * from person                   //查询person表中的所有记录
select * from person order by id desc  //按id降序排列


分页SQL: select * from 表名 limit 显示的记录数 offset 跳过的记录数

select * from person limit 5 offset 3
或select * from person limit 3,5
//从person表中获取5条记录,跳过前面的3条记录


插入语句: insert into 表名(字段列表)values(值列表)

insert into person(name,age) values('张三',26)


更新语句: updata 表名 set 字段名=值 where条件语句

updata person set name='李四' where id=10
//将id=10的记录中的name项修改为李四


删除语句: delete from 表名 where 条件子句

delete from person where id=10


SQLite的几个常用函数,看我的另外一篇文章: http://blog.csdn.net/qq_31718279/article/details/55050020

SQLite类实例(DatabaseHelper类): http://blog.csdn.net/qq_31718279/article/details/55049855

SQLite完整APP实例(备忘录):
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息