首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏全栈程序员必看

    SQLiteOpenHelper 操作不成功

    SDK和ADT为22.6.2版本号 project为4.4.2 今天在练习SQLiteOpenHelper里,使用的是三个JAVA文件操作。

    48130编辑于 2022-02-11
  • 来自专栏Linux驱动

    12.Android-SQLiteOpenHelper使用

    可能会被写操作独占,从而导致其它读写操作阻塞或出错 2.SQLiteOpenHelper介绍 为了在本地创建SQLite数据库,我们需要创建一个SQLiteOpenHelper的子类,这里取名的为MyOpenHelper 然后还要写构造方法来初始化父类、以及abstract修饰的抽象方法:onCreate(SQLiteDatabase)、onUpgrade(SQLiteDatabase,int,int). 2.1 为什么要创建SQLiteOpenHelper 因为SQLiteOpenHelper不知道我们要创建的数据库是什么名字,以及表的内容,所以我们要创建MyOpenHelper类. 3.SQLiteOpenHelper构造方法 构造方法用来创建数据库文件的 ,构造方法如下: public SQLiteOpenHelper(Context context, String name, CursorFactory factory, int version); / 6.数据库增删改查 实现了SQLiteOpenHelper的子类(MyOpenHelper类)后,就有了数据库了,接下来我们便可以对SQLiteDatabase类进行数据库增删改查 6.1 通过SQLiteDatabase

    1.3K10发布于 2020-02-18
  • 来自专栏Android知识分享

    Android:SQLiteOpenHelper类(SQLlite数据库操作)详细解析

    Android中,通过SQLiteOpenHelper类来实现对SQLite数据库的操作。 ---- 2. SQLiteOpenHelper类介绍 定义:SQLiteOpenHelper是一个辅助类 作用:管理数据库(创建、增、修、删) & 版本的控制。 使用过程:通过创建子类继承SQLiteOpenHelper类,实现它的一些方法来对数据库进行操作。 在实际开发中,为了能够更好的管理和维护数据库,我们会封装一个继承自SQLiteOpenHelper类的数据库操作类,然后以这个类为基础,再封装我们的业务逻辑方法。 SQLiteOpenHelper类的数据库操作方法介绍 方法名 作用 备注 onCreate() 创建数据库 创建数据库时自动调用 onUpgrade() 升级数据库 close() 关闭所有打开的数据库对象

    32K1611发布于 2019-02-22
  • 来自专栏Android知识分享

    Carson带你学Android:SQLlite数据库操作全解析(SQLiteOpenHelper类)

    SQLiteOpenHelper类 2.1 简介 2.2 SQLiteOpenHelper类 常用方法 /** * 创建数据库 */ // 1. 数据库第1次创建时 则会调用,即 第1次调用 getWritableDatabase() / getReadableDatabase()时调用 // 在继承SQLiteOpenHelper类的子类中复写 数据库升级时自动调用 // 在继承SQLiteOpenHelper类的子类中复写 onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion 具体使用 使用步骤 = 自定义数据库子类(继承SQLiteOpenHelper类)、创建数据库 & 操作数据库(增、删、查、改) 下面,我将逐一介绍每个步骤 3.1 自定义数据库子类(继承 SQLiteOpenHelper * 在SQLiteOpenHelper的子类中,必须有该构造函数 */ public DatabaseHelper(Context context, String name

    1.3K20编辑于 2022-03-24
  • 来自专栏TestOps云层

    移动应用常见Bug汇总及预防方法

    (SQLiteOpenHelper.java:98) > Database( 2284): at > android.database.sqlite.SQLiteOpenHelper.getReadableDatabase (ContextWrapper.java:203) > SQLiteOpenHelper( 2284): at > android.database.sqlite.SQLiteOpenHelper.getWritableDatabase (SQLiteOpenHelper.java:98) > SQLiteOpenHelper( 2284): at > android.database.sqlite.SQLiteOpenHelper.getReadableDatabase (SQLiteOpenHelper.java:158) > SQLiteOpenHelper( 2284): at > com.android.providers.media.MediaProvider.query (Handler.java:99) > SQLiteOpenHelper( 2284): at android.os.Looper.loop(Looper.java:123) > SQLiteOpenHelper

    1.7K21编辑于 2022-04-04
  • 来自专栏算法微时光

    Android之SQLite使用

    然而为了数据库升级的需要以及使用更方便,往往使用SQLiteOpenHelper的子类来完成创建、打开数据库及各种数据库操作。 SQLiteOpenHelper是个抽象类,在该类中有如下两个抽象方法,SQLiteOpenHelper的子类必须实现这两个方法。 中onCreate和onUpdate方法 SQLiteOpenHelper会自动检测数据库文件是否存在。 先看看SQLiteOpenHelper类的构造方法再解释onUpdate()方法何时会被调用。 (不包括文件路径),SQLiteOpenHelper会根据这个文件名创建数据库文件。

    88320编辑于 2021-12-06
  • 来自专栏AndroidTraveler

    小白到大神,你需要了解的 sqlite 最佳实践

    ---- 并发数据库访问 假设你实现了自己的 SQLiteOpenHelper。 public class DatabaseHelper extends SQLiteOpenHelper { ... } 现在你想要在多个线程中对数据库写入数据。 让我们构造单例类 DatabaseManager,它会持有并返回单个 SQLiteOpenHelper 对象。 public class DatabaseManager { private static DatabaseManager instance; private static SQLiteOpenHelper mDatabaseHelper; public static synchronized void initializeInstance(SQLiteOpenHelper helper) {

    1.1K30发布于 2019-06-20
  • 来自专栏muller的测试分享

    Android sqlite 使用简介

    Android系统支持sqlite数据库,在app开发过程中很容易通过SQLiteOpenHelper使用数据库,SQLiteOpenHelper依赖于Context对象,但是基于uiatomator1.0 App内常规使用数据库 Android应用内使用数据库需要借助于SQLiteOpenHelper类实现对数据库的操作。 使用数据库通过以下几步: ①. 创建私有类集成自SQLiteOpenHelper方法,并覆写onCreate、onUpdate方法实现对数据库升级降级操作。 ②. 获取SQLiteOpenHelper对象实例。 ③. 使用SQLiteDatabase接口实现数据库操作(增删改查) 图片 数据库源码解析 1、SQLiteOpenHelper构造方法中仅仅做了参数的赋值操作,没有关联数据库操作。 ; 3 覆写SQLiteOpenHelper对象的获取数据库方法,自定义获取数据库获取逻辑,这种实现模式不需要依赖Context对象。

    83620编辑于 2022-06-07
  • 来自专栏李蔚蓬的专栏

    Android | SQLite的使用

    核心:SQLiteOpenHelper帮助类(是一个抽象类) 借助这个类就可以非常简单地对数据库进行创建和升级; 创建数据库 SQLiteOpenHelper是抽象类,需创建自己的类继承; 其中有两个抽象方法 SQLiteOpenHelper有两个构造方法可供重写, 一般使用参数少一点的那个构造方法, 其接收四个参数: Context, 数据库名,创建数据库时使用的就是这里指定的名称; 允许查询数据时返回一个自定义的 构建SQLiteOpenHelper实例后, 再调用他的getReadableDatabase()/getWritableDatabase()方法就能创建数据库了 (数据库文件会存放在/data/data 新建MyDatabaseHelper类继承自SQLiteOpenHelper: public class MyDatabaseHelper extends SQLiteOpenHelper { 的MyDatabaseHelper类中添加代码: (添加的地方以感叹号标记,一共四处) public class MyDatabaseHelper extends SQLiteOpenHelper {

    1.9K30发布于 2019-06-11
  • 来自专栏KK的小酒馆

    SQlite数据库简介Android网络与数据存储

    网络与数据存储 第二章学习 ---- SQlite数据库#### 概要: SQLite看名字就知道是个数据库,Android专门为移动端内置了此种轻量级工具,并且为了方便在Java语言中进行数据库操作,编写了SQLiteOpenHelper 类来方便在Android中操作数据库” ---- 1.SQLiteOpenHelper类的使用##### public abstract class SQLiteOpenHelper{} 源代码中的SQLiteOpenHelper 是这样开头的,所以,他是一个抽象类,想要使用它,必须将它作为父类,自定义一个类,比如 public class MySQLiteOpenHelper extends SQLiteOpenHelper { autoincrement, "列名为"id",类型为"integer",作为主键(primary key),"autoincrement"代表随着行数的增加自增的; 流程小结: Step 1:自定义一个类继承SQLiteOpenHelper super中设置好要创建的数据库名,版本号 Step 3:重写onCreate( )方法创建表结构 Step 4:重写onUpgrade( )方法定义版本号发生改变后执行的操作 ---- 以上完成了一个自定义SQLiteOpenHelper

    1.2K30发布于 2018-09-10
  • 来自专栏老欧说安卓

    Android开发笔记(三十)SQLite数据库基础操作

    SQLiteOpenHelper 因为SQLiteDatabase存在局限性,例如必须小心不能重复打开数据库,还有app每次升级的同时升级数据库很不方便,所以Android提供了一个帮助工具,用于指导我们进行 SQLite的合理使用,这个工具就是SQLiteOpenHelper。 我们新建一个数据库操作类继承自SQLiteOpenHelper,首先提示要重写onCreate和onUpgrade两个方法。 android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper ; import android.util.Log; public class TestDBHelper extends SQLiteOpenHelper { private static final

    86431发布于 2019-01-18
  • 来自专栏话梅糖のAndroid学习

    Android SQLite基本用法(极简)

    综合来看,即轻量 兼容 多端 无需配置 无外部依赖 拥有简单易懂的API 安全 在Android中如何使用 Android 提供的 SQLiteOpenHelper.java 是一个抽象类。 Studio中 右键需要创建数据库.java文件的包,选择new,选择新建Class 在弹出框中选择输入类名称 这一行规定死了,只能是这样的: public class DBHelper extends SQLiteOpenHelper name, CursorFactory factory, int version) { super(context, name, factory, version); } 继承的抽象类SQLiteOpenHelper SQLiteDatabase db, int oldVersion, int newVersion) { } Eclipse中 右键需要创建数据库.java文件的包,选择new,选择新建Class 在弹出框中选择SQLiteOpenHelper

    49710编辑于 2025-03-03
  • 来自专栏全栈开发工程师

    【鼠】安卓学习杂记(十三)——Android数据存储之SQLite数据库存储

    三、使用步骤 第一步:创建MyDatabaseHelper继承SQLiteOpenHelper package com.example.administrator.mokar; import android.content.Context ; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; public class MyDatabaseHelper extends SQLiteOpenHelper { public static final String CREATE_TXT =

    35200编辑于 2025-01-06
  • 来自专栏ZackSock

    Android存储数据的三种方式

    如果通过这个键找不到,就返回第二个参数中的值 sp.getString("name", null); } 3、SQLite数据库 3.1、SQLite数据库的创建 SQLite数据库的创建需要实现抽象类SQLiteOpenHelper ,具体先定义一个类MySQLiteOpenHelper继承SQLiteOpenHelper: public class MySQLiteOpenHelper extends SQLiteOpenHelper onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { }} 这里写了三个方法,其中onCreate()和onUpgrade()方法为SQLiteOpenHelper MySQLiteOpenHelper的实例,然后通过这个实例获取数据库 private void initData(){ //这里游标工场暂时用不到,设为null MySQLiteOpenHelper sqLiteOpenHelper 这两个方法暂时不区别 //SQLiteDatabase db = sqLiteOpenHelper.getWritableDatabase(); SQLiteDatabase db = sqLiteOpenHelper.getReadableDatabase

    1.5K20发布于 2020-01-22
  • 来自专栏风吹杨柳

    2014-10-27Android学习------SQLite数据库操作(二)-----数据库的创建--SQLiteHelper extends SQLiteOpenHelper

    上篇有篇文章讲了数据库的操作 条件是:数据库已经建好的了,我们只需要从里面获取数据(查询)就可以了, 现在我们来看看第二种数据库的操作: class SQLiteHelper extends SQLiteOpenHelper 封装一个继承SQLiteOpenHelper类的数据库操作类。 SQLiteOpenHelper类是一个抽象的辅助类,主要用来生成一个数据库并对数据库的版本进行管理,在SQLiteOpenHelper类的构造方法中分别传入Context、数据库名称,CursorFactory 在SQLiteOpenHelper中首先执行的是onCreate方法(当数据库第一次创建时),一般在这个方法里生成数据表。 ; public class SQLiteHelper extends SQLiteOpenHelper { public static final String TB_NAME = "citys

    96820编辑于 2022-03-07
  • 来自专栏【Android开发基础】

    【Android从零单排系列四十二】《Android数据存储方式-SQLite数据库》

    下面是关于SQLite数据库的一些重要信息: 数据库创建:可以使用SQLiteOpenHelper类来创建和管理数据库。它提供了创建数据库、升级数据库版本等功能。 数据库版本管理:如果需要修改数据库结构或添加新表,可以通过增加数据库版本号,并在SQLiteOpenHelper的onUpgrade方法中执行相应的数据库升级操作。 可以使用SQLiteOpenHelper的onUpgrade方法来执行迁移逻辑。 二 SQLite数据库使用方法 创建数据库和表: 创建一个继承自SQLiteOpenHelper的子类,并实现它的构造方法、onCreate()和onUpgrade()等方法。 方法: SQLiteOpenHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version

    99630编辑于 2023-07-17
  • 来自专栏Linux内核深入分析

    Android 存储学习之SQLite数据库的基本操作

    再学习数据库的相关操作前,我先给大家介绍一个类:SQLiteOpenHelperSQLiteOpenHelper是Android系统为方便程序的开发引入的一个对数据库管理的工具类。 一般的用法是创建SQLiteOpenHelper的子类,并实现它的OnCreate方法和OnUpdate方法。 比如:下面是我定义的一个SQLiteOpenHelper的子类: public class MySQLiteOpenHelper extends SQLiteOpenHelper { /* * 既然我们大概认识了SQLiteOpenHelper,那我们就先开始行动。

    73320编辑于 2022-05-08
  • 来自专栏我的博客

    安卓开发之SQLite数据库操作

    一、SQLiteDatabase对象 获取SQLiteDatabase对象可以使用SQLiteOpenHelper或者使用静态方法获取(具体内容可以参考开发手册) //使用SQLiteOpenHelper SQLiteDatabase.openOrCreateDatabase(“/data/data/study.sqlite/databases/sqlite_joyous_db”, null); 其中使用SQLiteOpenHelper 需继承SQLiteOpenHelper,使用静态方法中参数中study.sqlite是包名,sqlite_joyous_db是数据库名 二、操作数据库方法 execSQL()执行带占位符的SQL语句或者

    2.7K120发布于 2018-05-08
  • 来自专栏实用技术

    Android闹钟开发与展示Demo

    一、闹钟的设置不需要数据库,但是展示闹钟列表的时候需要,所以需要数据库: public class MySQLiteOpenHelper extends SQLiteOpenHelper{ public DbUtils.tabIsExist("my_clock", sqLiteOpenHelper)){ ClockController.createTable = new MySQLiteOpenHelper(getApplicationContext()); SQLiteDatabase database = sqLiteOpenHelper.init DbUtils.tabIsExist("my_clock", sqLiteOpenHelper)){ ClockController.createTable(database); cursor = null; try { db = dbHelper.getReadableDatabase();//此this是继承SQLiteOpenHelper

    1.9K20编辑于 2022-02-09
  • 来自专栏郭霖

    Android数据库安全解决方案,使用SQLCipher进行加解密

    首先创建一个MyDatabaseHelper继承自SQLiteOpenHelper,注意这里使用的并不是Android API中的SQLiteOpenHelper,而是net.sqlcipher.database 包下的SQLiteOpenHelper,代码如下所示: import android.content.Context; import net.sqlcipher.database.SQLiteDatabase ; import net.sqlcipher.database.SQLiteDatabase.CursorFactory; import net.sqlcipher.database.SQLiteOpenHelper ; public class MyDatabaseHelper extends SQLiteOpenHelper { public static final String CREATE_TABLE Override public void onUpgrade(SQLiteDatabase db, int arg1, int arg2) { } } 除了引入的包不一样了,其它的用法和传统的SQLiteOpenHelper

    2.9K90发布于 2018-01-05
领券