SQLite
来源:互联网 发布:视频编辑软件 慢动作 编辑:程序博客网 时间:2024/06/15 23:34
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和副本的东西,当所有的副本都关闭之后再把它关闭。如果把它先关闭了,副本还没关闭,副本数据将没有用。
- SQLite
- SQLite
- SQLite
- SQLite
- SQLite
- sqlite
- sqlite
- SQLite
- SQLite
- sqlite
- SQLite
- SQLite
- SQLite
- SQLite
- SQLite
- sqlite
- sqlite
- sqlite
- ACdream OJ 1063 平衡树
- Windows编程-创建窗口
- HDU1231最大的连续序列和
- LeetCode OJ-70. Climbing Stairs(爬楼梯问题)
- RESTful API 设计指南
- SQLite
- 关于“connect: Network is unreachable” 和cannot find device "eth0"问题
- find the safest road(Floyd算法和Dijkstra算法)hdu1596
- spring_对JDBC的支持
- Random、 LinkedList 、Collections 、Arrays 、MyArrayList 的部分应用(util包)
- 数据结构实验之图论八:欧拉回路
- 各硬件设备在Linux中的文件名、磁盘分区
- js分页
- Java————String类型详解