SQLite

1、SQLite是非常流行的嵌入式关系型数据库,轻载,速度快,而且是开源。在Android中了提供SQLite,所以在Android开发中可以使用SQLite,SQLite提供SQL接口,和一般的数据库一样。但是Android的API不采用JDBC,JDBC消耗太多的资源。

2、SQLite是一个轻量级的关系型数据库,它的功能和Oracle、MySQL相比少了很多,支持的数据类型和SQL语法有部分变化,不支持触发器,不支持左右连接,不支持一些数据类型,但是最大的区别就是SQLite支持的数据类型。

3、SQLite不强制数据类型约束,任何数据都可以插入任何列。它支持的数据存储类型有五种,但是为了和其他DBMS兼容,它有一个列相似性的概念(Column Affinity),例如你向一个整型列中插入字符串时,SQLite会试图将该字符串转换成一个整数。如果可以转换,它将插入该整数。否则,将插入字符串

NULL: 表示一个NULL值。
INTEGER: 用来存储一个整数,根据大小可以使用1,2,3,4,6,8位来存储。
REAL: 浮点数。
TEXT: 按照字符串来存储。
BLOB: 按照二进制值存储,不做任何改变。

4、public TestSqliteOpenHelper(Context context, String name, CursorFactory factory, int version) :
context表示上下文,name表示数据库名字,factory用于存放游标设置为null即可,
version表示版本号。

public void onCreate(SQLiteDatabase db):数据库创建时调用这个方法。

 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion):数据库版本更新调用该方法。


(2)实现onCreate方法,建表



(3)新增,修改,删除,查询操作



cursor.close(),否则很容易内存泄漏。




5、总结

SQLiteDatabase,SQLiteOpenHelper,Database他们之间的关系

a、Database:可以把它理解成真正存储数据的数据库

b、SQLiteDatabase:可以把它理解成Database的副本,我们程序是对副本进行操作。操作完成之后把数据提交到Database中。我们可以有很多副本,通过getReadableDatabase和getWritableDatabase获取副本。对副本操作完之后,关闭副本。

c、SQLiteOpenHelper:可以把它理解成连接Database和副本的东西,当所有的副本都关闭之后再把它关闭。如果把它先关闭了,副本还没关闭,副本数据将没有用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值