基于Android SQLite的使用介绍_安卓软件开发教程-查字典教程网
基于Android SQLite的使用介绍
基于Android SQLite的使用介绍
发布时间:2016-12-28 来源:查字典编辑
摘要:在Android平台中,集成了一个嵌入式关系型数据库--SQLite,它支持NULL、INTEGER、REAL(浮点数字)、TEXT(字符串...

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

ex: 可以在Integer类型的字段中存放字符串,或者在布尔类型字段中存放浮点数,或者在字符型字段中存放日期,but!定义为INTEGER PRIMARY KEY的字段只能存储64位整数,另外,在编写CREATE TABLE语句时,可以省略跟在字段名称后面的数据类型;

create table person(personid integer primary key autoincrement,name varchar(20))//name的类型可省略;

select * from tablename where tiaojian group by 分组字句 having... order by 排序字句

select * from person

select * from person order by id desc/asc

select name from person group by name having count(*)>1

分页:select * from Account limit 5 offset 3 或者 select * from Account limit3,5

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

insert into person(name,age) values("Livingstone",22)

更新语句:update tablename set field1=val1,field2=val2 where 条件语句

update person set name="Livingstone" where id = 10

删除语句:delete from tablename where 条件语句

delete from person where id=10

获取添加记录后自增长的ID值:select last_insert_rowid()

SQLiteDatabase专门提供了对于添加、删除、更新、查询的操作方法:insert(),delete(),update()和query();

Insert()方法用于添加数据,各个字段的数据使用ContentValues进行存放,ContentValues类似于MAP,相对于 MAP,它提供了存取数据对应的put(String key,Xxx value)和getAsXxx(String key)方法;

long rowid=db.insert("person",null,values);//返回新添记录的行号,与主键id无关;

不管第三个参数是否包含数据,执行Insert()方法必然添加一条记录,如果第三个参数为空,会添加一条除主键之外

其他字段值为Null的记录,Insert()方法内部其实是通过构造SQL语句完成数据的添加,第二个参数用于指定空值字段的名称:如果第三个参数values为Null或者元素个数为0,由于Insert()方法要求必须添加一条除了主键之外其它字段为Null值的记录,为了满足SQL语法要求,insert语句必须给定一个字段名,ex:insert into person(name) values(NULL),若不给字段名,insert语句就为:insert into person() values(),对于字段名,建议使用主键之外的字段,如果使用了INTEGER类型的主键字段,执行类似insert into person(personid) values(NULL)的insert语句后,该主键字段值也不会为NULL,若第三个参数values不为Null并且元素个数大于0,第二个参数设置为null。

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新安卓软件开发学习
    热门安卓软件开发学习
    编程开发子分类