我的编程空间,编程开发者的网络收藏夹
学习永远不晚

如何在Android中使用SQLite存储数据

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

如何在Android中使用SQLite存储数据

这篇文章给大家介绍如何在Android中使用SQLite存储数据,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

安装一个SQLiteDeveloper,这个用来打开android生成的数据库。软件随便搜索就能找到,后面导出数据库只需打开软件点击“数据库“----->"注册数据库"后面的操作最好自己摸索吧

编写一个业务类先生成一个数据库和数据库表,这个类如下所示

package org.lxh.service;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteDatabase.CursorFactory;import android.database.sqlite.SQLiteOpenHelper;import android.database.sqlite.SQLiteQueryBuilder;public class DBService extends SQLiteOpenHelper { //使用SQLiteOpenHelper创建数据库  public DBService(Context context) {    super(context, "mldn.db", null, 1);  }  public void onCreate(SQLiteDatabase db) {    String sql="create table student(userid Integer primary key autoincrement,username varchar(30))";  //生成数据库表的sql    db.execSQL(sql); //生成表  }  public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {  }}

数据库和表准备好之后就可以做下一步的工作了

编写增删改查的业务类

package org.lxh.service;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import org.lxh.vo.Student;import android.content.Context;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;public class StudentService {  private DBService db;  public StudentService(Context context){ //构造方法实例化DBService    db=new DBService(context);  }  public void savePerson(List<Student> stu){    String sql="insert into student(username) values(?)";    SQLiteDatabase database=db.getWritableDatabase(); //使用getWritableDatabase取得SQLiteDatabase    Iterator<Student> it=stu.iterator();    while(it.hasNext()){      Student student=it.next();      database.execSQL(sql, new Object[]{student.getUsername()}); //执行插入    }  }  public void delete(int userid){    String sql="delete from student where userid=?";    SQLiteDatabase database=db.getWritableDatabase();    database.execSQL(sql, new Object[]{String.valueOf(userid)});  }  public List<Student> fiandAll(){    List<Student> all=new ArrayList<Student>();    String sql="select * from student";    SQLiteDatabase database=db.getReadableDatabase(); //使用getReadableDatabase取得SQLiteDatabase    Cursor cursor=database.rawQuery(sql, null); //得到游标,类似resultset    Student stu;    while(cursor.moveToNext()){ //移动游标      int id=cursor.getInt(cursor.getColumnIndex("userid"));      String name=cursor.getString(cursor.getColumnIndex("username"));      stu=new Student();      stu.setUserid(id);      stu.setUsername(name);      all.add(stu);    }    cursor.close(); //关闭游标    return all;  }  public int getCount(){    String sql="select count(*) from student";    SQLiteDatabase database=db.getReadableDatabase();    Cursor cursor=database.rawQuery(sql, null);    cursor.moveToFirst();    return cursor.getInt(0);  }}

需要注意的是getReadableDatabase和getWritableDatabase的用法,只是单纯的数据查询就使用getReadableDatabase,对数据进行修改操作就使用后者。另外需要注意sqlite的数据类型是没有任何作用的,只是为了程序员的互相合作。

编写android的Junit

package org.lxh.db;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import org.lxh.service.DBService;import org.lxh.service.StudentService;import org.lxh.vo.Student;import android.test.AndroidTestCase;import android.util.Log;public class Test extends AndroidTestCase{  public void testSave(){    DBService db=new DBService(this.getContext());    db.getWritableDatabase();  }  public void testSaveStudent(){    StudentService service=new StudentService(this.getContext());    Student stu=null;    List<Student> stus=new ArrayList<Student>();    for(int i=0;i<10;i++){      stu = new Student();      stu.setUsername("陈亚峰"+i);      stus.add(stu);    }    service.savePerson(stus);  }  public void delete(){    StudentService service=new StudentService(this.getContext());    service.delete(11);  }  public void findAll(){    StudentService service=new StudentService(this.getContext());    List<Student> all=service.fiandAll();    Iterator<Student> it=all.iterator();    while(it.hasNext()){      Student stu=it.next();      Log.i("Test", "id:"+stu.getUserid()+","+"username"+stu.getUsername());    }  }  public void findRows(){    StudentService service=new StudentService(this.getContext());    Log.i("Test",String.valueOf(service.getCount()));  }}

执行之后生成了数据,id为11的记录已经被删除了

如何在Android中使用SQLite存储数据

如何在Android中使用SQLite存储数据

关于如何在Android中使用SQLite存储数据就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

如何在Android中使用SQLite存储数据

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

如何在Android中使用SQLite存储数据

这篇文章给大家介绍如何在Android中使用SQLite存储数据,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1. 安装一个SQLiteDeveloper,这个用来打开android生成的数据库。软件随便搜索就能找到,
2023-05-30

Android数据存储之SQLite使用

SQLite是一款开源的、嵌入式关系型数据库,第一个版本Alpha发布于2000年。SQLite在便携性、易用性、紧凑性、高效性和可靠性方面有着突出的表现。 在Android中创建的SQLite数据库存储在:/data/data/<包名>/
2022-06-06

如何在Android中使用SQLite数据库

本篇文章为大家展示了如何在Android中使用SQLite数据库,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。SQLite简介:SQLite是Android系统采用的一种开源的轻量级的关系型的数据库
2023-05-31

详解Android数据存储—使用SQLite数据库

SQLite是Android自带的关系型数据库,是一个基于文件的轻量级数据库。Android提供了3种操作数据的方式,SharedPreference(共享首选项)、文件存储以及SQLite数据库。 SQLite数据库文件被保存在/data
2022-06-06

Android使用Sqlite存储数据用法示例

本文实例讲述了Android使用Sqlite存储数据的方法。分享给大家供大家参考,具体如下: 一般在开发程序中,经常使用数据的存储功能,如在使用Delphi开发程序时,存储程序的简单设置的INI文件,在C#开发中有时也需要存储简单的设置,个
2022-06-06

Android中如何使用SQLite数据库

在Android中使用SQLite数据库需要进行以下步骤:创建一个继承自SQLiteOpenHelper的帮助类来管理数据库的创建和版本更新:public class DBHelper extends SQLiteOpenHelper {p
Android中如何使用SQLite数据库
2024-04-09

Android持久化存储(3)SQLite数据库的使用

1.什么是SQlite SQLite是由C语言编写的一款轻型数据库,因占用资源小,处理速度快,功能齐全,特别适用于移动设备,最重要的是开源,任何人都可以使用它,许多开源项目(PHP,Python)和当今两大手机操作系统Android和iOS
2022-06-06

Android如何通过SQLite数据库实现数据存储管理

这篇文章主要介绍了Android如何通过SQLite数据库实现数据存储管理,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。0 实验环境在Android Studio中进行有关代
2023-06-25

SharedPreferences如何在android中实现数据存储

本篇文章为大家展示了SharedPreferences如何在android中实现数据存储,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Android平台给我们提供了一个SharedPreferenc
2023-05-31

在android中如何使用缓存和脱机存储

这篇文章将为大家详细讲解有关在android中如何使用缓存和脱机存储,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1、在android中使用缓存和脱机存储  缓存可以加速你的应用程序,即使在
2023-06-25

如何使用SharedPreferences在Android存储对象

这篇文章给大家介绍如何使用SharedPreferences在Android存储对象,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。为什么不用SQLite? 原因多种:除了面向对象和关系数据库之间的阻抗不匹配时,SQLi
2023-06-25

Android 开发中使用 SQLite 数据库

SQLite 是一款非常流行的嵌入式数据库,它支持 SQL 查询,并且只用很少的内存。Android 在运行时集成了 SQLite,所以每个 Android 应用程序都可以使用 SQLite 数据库。对数熟悉 SQL 的开发人员来时,使用
2022-06-06

Java ushort 如何在数据库中进行存储?(java ushort如何在数据库存储 )

在Java编程中,ushort是一种无符号短整型数据类型,它通常用于表示范围在0到65535之间的整数值。当涉及到将ushort数据存储到数据库中时,需要考虑数据库的类型和存储机制。以下是一些常见的方法和注意事项:
Java ushort 如何在数据库中进行存储?(java ushort如何在数据库存储  )
Java2024-12-18

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录