在Android平台上,集成了一个嵌入式关系型数据库—SQLite。如果你想要开发 Android 应用程序,一定需要在 Android 上存储数据,使用SQLite 数据库是一种非常好的选择。
下面介绍的基本使用:
是一个抽象类不能直接实例化,所以新建一个类DBOpenHelper继承自SQLiteOpenHelper :
-
publicclassDBOpenHelperextendsSQLiteOpenHelper{
-
publicDBOpenHelper(Contextcontext){
-
super(context,"yhn.db",null,1);
-
}
-
-
-
publicvoidonCreate(SQLiteDatabasedb){
-
db.execSQL("createtableuser(uidintegerprimarykeyautoincrement,unamevarchar(20),uaddressvarchar(20))");
-
}
-
-
-
publicvoidonUpgrade(SQLiteDatabasearg0,intarg1,intarg2){
-
-
}
如果执行上边的代码,则会创建一个数据库文件xx.db
数据库操作类:
-
publicclassDBDao{
-
DBOpenHelperdbOpenHelper;
-
-
publicDBDao(Contextcontext){
-
this.dbOpenHelper=newDBOpenHelper(context);
-
}
-
-
-
-
-
publicvoidsave(Useruser){
-
SQLiteDatabasedb=dbOpenHelper.getWritableDatabase();
-
db.execSQL("insertintouser(uname,uaddress)values(?,?)",newObject[]{user.getUname(),user.getUaddress()});
-
db.close();
-
}
-
-
-
-
-
publicvoiddelete(Integeruid){
-
SQLiteDatabasedb=dbOpenHelper.getWritableDatabase();
-
db.execSQL("deletefromuserwhereuid=?",newObject[]{uid});
-
db.close();
-
}
-
-
-
-
-
publicvoidupdate(Useruser){
-
SQLiteDatabasedb=dbOpenHelper.getWritableDatabase();
-
db.execSQL("updateusersetuname=?,uaddress=?whereuid=?",newObject[]{user.getUname(),user.getUaddress(),user.getUid()});
-
db.close();
-
}
-
-
-
-
-
publicUserfind(Integeruid){
-
SQLiteDatabasedb=dbOpenHelper.getReadableDatabase();
-
Cursorcursor=db.rawQuery("select*fromuserwhereuid=?",newString[]{uid.toString()});
-
if(cursor.moveToFirst()){
-
intuid2=cursor.getInt(cursor.getColumnIndex("uid"));
-
Stringuname=cursor.getString(cursor.getColumnIndex("uname"));
-
Stringuaddress=cursor.getString(cursor.getColumnIndex("uaddress"));
-
Useruser=newUser();
-
user.setUid(uid2);
-
user.setUname(uname);
-
user.setUaddress(uaddress);
-
returnuser;
-
}
-
cursor.close();
-
returnnull;
-
}
-
-
-
-
-
-
-
publicList<User>getScrollData(intoffset,intmaxResult){
-
List<User>users=newArrayList<User>();
-
SQLiteDatabasedb=dbOpenHelper.getReadableDatabase();
-
Cursorcursor=db.rawQuery("select*fromuserorderbyuidasclimit?,?",newString[]{String.valueOf(offset),String.valueOf(maxResult)});
-
while(cursor.moveToNext()){
-
intuid2=cursor.getInt(cursor.getColumnIndex("uid"));
-
Stringuname=cursor.getString(cursor.getColumnIndex("uname"));
-
Stringuaddress=cursor.getString(cursor.getColumnIndex("uaddress"));
-
Useruser=newUser();
-
user.setUid(uid2);
-
user.setUname(uname);
-
user.setUaddress(uaddress);
-
users.add(user);
-
}
-
returnusers;
-
}
-
-
-
-
-
publiclonggetCount(){
-
SQLiteDatabasedb=dbOpenHelper.getReadableDatabase();
-
Cursorcursor=db.rawQuery("selectcount(*)fromuser",null);
-
cursor.moveToFirst();
-
longreslut=cursor.getLong(0);
-
returnreslut;
-
}
-
}
示例:向数据库中添加一条数据
-
DBDaodbDao=newDBDao(this);
-
Useruser=newUser();
-
user.setUname("qixiaohu");
-
user.setUaddress("chengdu");
-
dbDao.save(user);
PC上管理SQLite数据库的方法:
上边添加数据后可以看到数据添加成功:
分享到:
相关推荐
Android 数据存储与读取,操作Sqlite数据库
我们在使用ListView的时候需要和数据进行绑定,那么问题来了,如何获取SQLite数据库中的数据并动态的显示到ListView当中呢?其实过程很简单:首先要获取SQLite数据(当然首先你要创建一个SQLite数据库并填写了一些...
实验报告封面 课程名称: Android平台开发与应用 课程代码: SM3004 任课老师: 梁郁君 实验指导老师: 梁郁君 实验报告名称:实验10 Android数据存储与IO 学生姓名: 学号: 教学班: 递交日期: 签收人: 我申明,...
它可以读取sqlite3文件并执行SQL。图形用户界面使得它很容易分析和操纵sqlite3的数据库。 注意:SQLiteSpy是免费供个人和教育用途,SQLiteSpy主要特点: 1、数据库一览:树状显示所有的架构,包括表,列,索引和...
典型的桌面操作系统提供一种公共文件系统——任何应用软件可以...在Android中,可供选择的存储方式有SharedPreferences、文件存储、SQLite数据库方式、内容提供器(content provider)和网络,我们将在本章详细介绍。
实现文件读写,可以将数据库内容存储到文件中,并且可以通过读取文件中的数据条目进行添加 文本编辑框自动记录程序最后输入的内容,下次启动依然保留 注意:在删除数据库后不能进行除显示外其他操作。
实验项目名称 通讯录 实验目的与要求: 目的:练习掌握 Android 软件开发基本编程技术、Android 系统 SQLite 数据库的使用、通话、短信的使用等,设计制作一 Android 通讯录软件。 要求: (1)每位同学独立设计...
相信大家都知道知道,在AndroidOS中,提供了五中数据存储方式,分别是:ContentProvider存储、文件存储、SharedPreference存储、SQLite数据库存储、网络存储。那么这一篇,我们介绍文件存储。 1.Android文件的操作...
3.实现了管理员登录,使用的是与Tomcat服务器进行数据交互验证信息的正确性,我使用的是myeclipse进行布置的服务器信息,此时使用的是SQLserver 2008 数据库存储的管理员的信息,读取完以后然后返回到管理界面 ...
根据本讲学习内容,学会运用Sqlite进行数据存储、读取、修改、删除等操作。 (1)创建一个通讯录。 (2) 提交的作业包中含有应用程序运行效果截图
第8章 移动信息仓库——Android的数据存储操作 8.1 Android数据存储概述 8.2 轻轻地我保护——SharedPreferences存储 8.3 谁的文件,谁主宰——文件存储 8.4 打造自己的数据库存储——SQLite存储方式 8.4.1 Android...
storage工程演示了Android常用的几种数据存储方式,包括:共享参数SharedPreferences的键值对存取、数据库SQLite的关系型数据存取、SD卡的文件写入与读取操作(含文本文件读写和图片文件读写)、App全局内存的读写、...
第8章 移动信息仓库——Android的数据存储操作 8.1 Android数据存储概述 8.2 轻轻地我保护——SharedPreferences存储 8.3 谁的文件,谁主宰——文件存储 8.4 打造自己的数据库存储——SQLite存储方式 8.4.1 Android...
不仅仅是一个简单的计步器源码,还是个手机传感器数据采集工具,加速度、重力和陀螺仪数据被保存到sqlite数据库中,存储在手机的Download目录下,以便后续取出来进行数据处理。压缩包包含Android源码(Android ...
----------------------------------- Android 编程基础 1 封面----------------------------------- Android 编程基础 ...• SQLite SQLite SQLite SQLite 用作结构化的数据存储 • 多媒体支持 包括常见的音频、视频和...
比如sharedpreferences可以将数据保存着应用软件的私有存储区,这些存储区的数据只能被写入这些数据的软件读取.当然Android还支持文件存储、SQLite数据库和Content Provider。在这里我们将对sharedpreferences存储...
第8章 移动信息仓库——android的数据存储操作 136 8.1 android数据存储概述 136 8.2 轻轻地我保护——sharedpreferences存储 136 8.3 谁的文件,谁主宰——文件存储 140 8.4 打造自己的数据库存储——...
第8章 移动信息仓库——Android的数据存储操作 8.1 Android数据存储概述 8.2 轻轻地我保护——SharedPreferences存储 8.3 谁的文件,谁主宰——文件存储 8.4 打造自己的数据库存储——SQLite存储方式 8.4.1 Android...