Android自带了轻量级数据sqlite 类似于们操作电脑上的数据库sqlserver,mysql
对sqlite数据库的操作,我们要用goole提供的一系列的api
下面是例子讲解:
1 创建一个android的工程
思考:要对sqlite数据进行测试,首先我们必须需要一个数据库,所以想办法创建数据库
2.创建数据库
对sqlite数据库的操作,goole 的api提供了一个类叫SQLiteOpenHelper,我们要对数据库操作只要实现这个类即可,并实现其父类的方法。这里特别要说明的是SQLiteOpenHelper类中没有空的构造函数,所以当这个类被继承并实现其方法后任然有错误,所以要显示的调用父类的构造方法。
3.SQLiteOpenHelper 构造函数为:SQLiteOpenHelper(Context context, String name, CursorFactory factory, int version) context是应用的上下文对象,name为数据库的名字,注意数据库的名字不带后缀.db factory表示游标工厂 version表示数据的创建版本 当数据库更新后就可以改变其版本号。
当我们第一次调用继承了SQLiteOpenHelper类的实例对象的d.getWritableDatabase();方法,相关程序就会创建一个名字为name的数据库,当不是第一次调用,则不会创建新的数据库,而是使用已有的数据库。
4.数据库创建成功,创建表
SQLiteOpenHelper 有两个未实现的方法onCreate 和onUpdate,都是对数据库表的操作,一个是创建,一个是更新。d.getWritableDatabase();第一次也会默认的调用onCreate方法,创建表。onUpdate方法的是否执行,取决于version,当新的version和旧的version不同时候就可以调用update方法。比如,给表增加个字段,等于更新了数据库的版本,可以把版本1改成2,这样调用 d.getWriteableDatabase的时候就可以调用onUpdate方法
执行sql语句的方法 d.execSQL
数据库的表已经创建成功,对数据库表的增删改查操作
思考:对数据库表怎么操作,通过什么操作
1 对数据库操作,我们要拿到操作的对象才可以对其操作,比如,拿到那个数据库,对那个表的操作。因为这里我们可以用execSQL语句进行操作,所以表可以写在sql语句中,但是对那个数据库操作,值得我们深思。对数据库的操作我们前面说过,可以使用继承了SqliteOpenHelper类的类的对象来操作。
1.获取sqliteOpenHelper的对象,并调用getWriteableDatabase使其返回我们要使用的sqlite对象。操作对象已经拿到,可以对其操作
注意:数据库操作对象使用完后要调用close方法,关闭。但是为了到数据库是供本应用使用,所以在本应用中不手动的关闭数据操作对象。当应用退出的时候,可以自动关闭。
2.相关对象拿到,就可以对其进行增删改操作
3.查询数据我们调用 SqliteOpenHelper的 getReadableDatabase 返回对象对其操作
dbread.rawQuery返回的是一个cusor对象。我们要获取数据,就要使游标不断移动,然后取得数据cursor.moveToNext()
经验之谈:对游标的操作都是以move打头的
String pname = cursor.getString(cursor.getColumnIndex("name"));
4.获取总记录数
我们可以把count(*)当作一个数据库的隐藏字段对待,返回一个cusor对象,让cusor对象指向第一个结果,就是我们要查的总记录数 cusor.getLong(0);
5.开启sqlite的事物db.beginTransaction();
类似于hibernate,sqlite也提供了自己对数据库增删改查的方法
分享到:
相关推荐
CuteSqlite,是轻量级数据库sqlite的图形化管理客户端,使用C++/WTL实现,支持Windows操作系统。
SQLite是一款开源、轻量级的嵌入式关系型数据库,被广泛应用于移动设备、桌面系统以及服务器环境。它不需要单独的服务器进程,而是作为一个库直接集成到应用程序中,因此得名“轻量级”。SQLite支持多种编程语言,...
NULL 博文链接:https://chaowen0668.iteye.com/blog/1046817
作为轻量级数据库,它不需要独立的数据库服务器进程,可以直接在应用进程中运行,节省了资源,提高了效率。SQLite3 的设计目标是提供可靠的数据存储,同时保持易于使用和高效。 SQLite3 的主要特点包括: 1. **小巧...
SQLlite为一款轻量级的数据库,此文件里包含了System.Data.SQLite.dll文件,SQliteHelper.cs代码文件,SQLite的使用介绍文件,直接导入dll和cs文件即可,不需要写代码,调用示例在介绍文件内
在Android开发中,SQLite是一个非常重要的轻量级数据库系统,尤其适用于存储应用程序的结构化数据。SQLite被集成在Android系统中,为开发者提供了一个高效、可靠且易于使用的数据存储解决方案。在这个“学生管理系统...
sqlite3,轻量级数据库
在Android开发中,SQLite是一个非常重要的组件,它是一个轻量级的、开源的、嵌入式的SQL数据库引擎,被广泛用于存储和管理应用程序中的数据。SQLite数据库的优势在于其小巧、高效且无需单独的服务进程,使得它成为...
SQLite是一款广泛应用于嵌入式系统和个人计算机上的轻量级数据库引擎,由D. Richard Hipp创建并维护。它的设计目标是实现可移植性、可靠性和高效性,使得它可以在无需管理员或单独服务器进程的情况下运行,非常适合...
SQLiteExpert是一款专为SQLite数据库设计的轻量级内存数据库管理工具,它提供了高效、便捷的方式来创建、管理和维护SQLite数据库。SQLite是一种开源、无服务器、自包含的SQL数据库引擎,广泛应用于移动设备、嵌入式...
SQLite是一款轻量级的、开源的、自包含的数据库引擎,特别适合于嵌入式应用,无需单独的服务器进程,可以被直接集成到各种应用程序中。它的设计目标是提供一个可移植的、可靠的、高性能的数据库解决方案,尤其适用于...
在Android系统中,SQLite是一个非常重要的组成部分,它是一个轻量级的、开源的、关系型数据库,被广泛用于存储和管理应用程序中的数据。这个压缩包文件"Android源码——数据库SQLite.zip"可能包含了关于Android中...
《Android轻量级数据库框架解析》 在移动应用开发领域,Android系统以其开源、免费的特性,成为了全球最受欢迎的操作系统之一。在Android应用中,数据存储是不可或缺的一部分,而SQLite作为Android内置的关系型...
总的来说,SQLite是一个强大的轻量级数据库解决方案,适用于各种场景,包括作为Subversion等版本控制系统的工作副本数据存储。而“sqlite-shell-win32-x86”则提供了直观的命令行界面,便于数据库管理和维护。对于...
轻量级数据库如SQLite或 Realm,它们提供了面向对象的API和数据模型,使得开发者能够更直观地处理数据。 基于给定的标签“数据库 Android 架构设计 移动架构”,我们可以推断这是一个关于Android平台上数据库管理的...
4. **Web应用**: 作为轻量级数据库,可用于简单的Web应用后端。 #### 四、事务管理 SQLite支持事务处理机制,这在保证数据一致性方面非常重要。一个典型的事务周期包括开始、执行和提交/回滚几个阶段。具体来说: ...
5. **SQL支持**:虽然SQLite是一个轻量级数据库,但它支持标准SQL查询语言的大部分语法,使得数据操作更加灵活。 6. **内存数据库模式**:SQLite支持将整个数据库加载到内存中运行,从而极大地提高了数据访问速度。 ...
### 数据库SQLite在嵌入式系统中的...综上所述,SQLite作为一种轻量级的嵌入式数据库,在嵌入式系统中展现出强大的优势。无论是从其功能特性还是实际应用的角度来看,SQLite都是嵌入式系统开发者不可或缺的强大工具。
在Android应用开发中,SQLite是一个重要的组成部分,它是一个轻量级的、嵌入式的数据库引擎,用于存储应用程序的数据。SQLite ORM(对象关系映射)框架则简化了Android开发者与SQLite数据库之间的交互,使得数据操作...
Better.db 轻量级数据库,替代Sqlite3安装: npm install better.db 或使用速记npm i better.db输入: 用节点require()导入const better = require ( "better.db" ) ;创建一个新的数据库从记忆里const db = new ...