SDK和ADT为22.6.2版本号 project为4.4.2 今天在练习SQLiteOpenHelper里,使用的是三个JAVA文件操作。
可能会被写操作独占,从而导致其它读写操作阻塞或出错 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
本文主要讲解SQLiteOpenHelper的封装使用,代码引用自https://github.com/iMeiji/Toutiao 具体使用 主要方法包括创建数据库和数据库的升级。...继而用getReadableDatabase的实例以只读的方式去打开数据库 onUpgrade:主要用于数据库的升级,这里面 public class DatabaseHelper extends SQLiteOpenHelper
Android中,通过SQLiteOpenHelper类来实现对SQLite数据库的操作。 ---- 2....SQLiteOpenHelper类介绍 定义:SQLiteOpenHelper是一个辅助类 作用:管理数据库(创建、增、修、删) & 版本的控制。...使用过程:通过创建子类继承SQLiteOpenHelper类,实现它的一些方法来对数据库进行操作。...在实际开发中,为了能够更好的管理和维护数据库,我们会封装一个继承自SQLiteOpenHelper类的数据库操作类,然后以这个类为基础,再封装我们的业务逻辑方法。...SQLiteOpenHelper类的数据库操作方法介绍 方法名 作用 备注 onCreate() 创建数据库 创建数据库时自动调用 onUpgrade() 升级数据库 close() 关闭所有打开的数据库对象
:内部存储——应用程序私有文件外部存储——SD卡资源文件——只读( RAW 、XML) (3)数据库存储——SQLiteDataBase 今天我们讲讲在android studio中利用数据库存储中的SQLiteOpenHelper...在系统中创建数据库(表)功能 onUpgrade( ):利用SQL语句,在系统中升级数据库(表)功能 注: onCreate()方法只有第一次数据库创建时会用到 onUpgrade( )方法在版本更新会用到 SQLiteOpenHelper...Database( ):获取一个可读写的SQLiteDatabase对象 getReadableDatabase( ):获取一个只读的SQLiteDatabase对象 创建数据库 1.新建一个类继承SQLiteOpenHelper...public class MySQLOpenHelper extends SQLiteOpenHelper { public MySQLOpenHelper(@Nullable Context context...说明我们数据库已经创建好了 总结 到此这篇关于android studio使用SQLiteOpenHelper()建立数据库的方法的文章就介绍到这了,更多相关android studio建立数据库内容请搜索
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
SQLCipher支持很多种不同的平台,这里我们要学习的自然是Android中SQLCipher的用法了。...首先创建一个MyDatabaseHelper继承自SQLiteOpenHelper,注意这里使用的并不是Android API中的SQLiteOpenHelper,而是net.sqlcipher.database...; public class MyDatabaseHelper extends SQLiteOpenHelper { public static final String CREATE_TABLE...} @Override public void onUpgrade(SQLiteDatabase db, int arg1, int arg2) { } } 除了引入的包不一样了,其它的用法和传统的...SQLiteOpenHelper都是完全相同的。
传统的建表方式 其实为了方便我们对数据库表进行管理,Android本身就提供了一个帮助类:SQLiteOpenHelper。...那我们现在就来试试SQLiteOpenHelper的用法吧。首先你要知道SQLiteOpenHelper是一个抽象类,这意味着如果我们想要使用它的话,就需要创建一个自己的帮助类去继承它。...那你就太容易满足了,下面我们就来学习一下LitePal的基本用法,看一看使用这个框架是如何实现同样的功能的。...LitePal的基本用法 虽说LitePal宣称是近乎零配置,但也只是“近乎”而已,它还是需要进行一些简单配置才可以使用的,那么我们第一步就先快速学习一下LitePal的配置方法。 快速配置 1....好了,到目前为止你已经算是对LitePal的用法有点入门了,那么本篇文章的内容就到这里,下篇文章当中我们将学习使用LitePal进行升级表的操作。
再学习数据库的相关操作前,我先给大家介绍一个类:SQLiteOpenHelper。SQLiteOpenHelper是Android系统为方便程序的开发引入的一个对数据库管理的工具类。...一般的用法是创建SQLiteOpenHelper的子类,并实现它的OnCreate方法和OnUpdate方法。...比如:下面是我定义的一个SQLiteOpenHelper的子类: public class MySQLiteOpenHelper extends SQLiteOpenHelper { /* *...既然我们大概认识了SQLiteOpenHelper,那我们就先开始行动。
传统的建表方式 其实为了方便我们对数据库表进行管理,Android本身就提供了一个帮助类:SQLiteOpenHelper。...那我们现在就来试试SQLiteOpenHelper的用法吧。首先你要知道SQLiteOpenHelper是一个抽象类,这意味着如果我们想要使用它的话,就需要创建一个自己的帮助类去继承它。...新建一个MySQLiteHelper类并让它继承SQLiteOpenHelper,这样一个最基本的数据库帮助类的代码如下所示: public class MySQLiteHelper extends SQLiteOpenHelper...那你就太容易满足了,下面我们就来学习一下LitePal的基本用法,看一看使用这个框架是如何实现同样的功能的。...好了,到目前为止你已经算是对LitePal的用法有点入门了,那么本篇文章的内容就到这里,下篇文章当中我们将学习使用LitePal进行升级表的操作。
下面是关于SQLite数据库的一些重要信息: 数据库创建:可以使用SQLiteOpenHelper类来创建和管理数据库。它提供了创建数据库、升级数据库版本等功能。...数据库版本管理:如果需要修改数据库结构或添加新表,可以通过增加数据库版本号,并在SQLiteOpenHelper的onUpgrade方法中执行相应的数据库升级操作。...可以使用SQLiteOpenHelper的onUpgrade方法来执行迁移逻辑。...二 SQLite数据库使用方法 创建数据库和表: 创建一个继承自SQLiteOpenHelper的子类,并实现它的构造方法、onCreate()和onUpgrade()等方法。...null, null, null, null, null ); } } // 示例用法
android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDatabase.CursorFactory; import android.database.sqlite.SQLiteOpenHelper...; public class MySqliteOpenHelper extends SQLiteOpenHelper { public MySqliteOpenHelper(Context context...mysql sqlserver2000 sqlite 嵌入式 轻量级 SqliteOpenHelper 创建数据库步骤: 1.创建一个类继承SqliteOpenHelper,需要添加一个构造方法,实现两个方法...activity操作技巧总结》、《Android文件操作技巧汇总》、《Android开发入门与进阶教程》、《Android资源操作技巧汇总》、《Android视图View技巧总结》及《Android控件用法总结
在上一篇文章中,我们学习了LitePal的基本用法,体验了使用框架来进行创建表操作的便利。...因此,升级表的操作对于任何一个项目也是至关重要的,那么今天我们就一起来学习一下,在Android传统开发当中升级表的方式,以及使用LitePal来进行升级表操作的用法。...如果你还没有看过前一篇文章,建议先去参考一下 Android数据库高手秘籍(二)——创建表和LitePal的基本用法 。...没错,这样的话,两张表就会同时创建了,代码如下所示: [java] view plaincopy public class MySQLiteHelper extends SQLiteOpenHelper...现在只需要调用如下代码,表就可以得到创建或升级了: [java] view plaincopy SQLiteOpenHelper dbHelper = new MySQLiteHelper(this,
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,...cursor.moveToFirst(); return cursor.getInt(0); } } 需要注意的是getReadableDatabase和getWritableDatabase的用法
在上一篇文章中,我们学习了LitePal的基本用法,体验了使用框架来进行创建表操作的便利。...因此,升级表的操作对于任何一个项目也是至关重要的,那么今天我们就一起来学习一下,在Android传统开发当中升级表的方式,以及使用LitePal来进行升级表操作的用法。...如果你还没有看过前一篇文章,建议先去参考一下 Android数据库高手秘籍(二)——创建表和LitePal的基本用法 。...没错,这样的话,两张表就会同时创建了,代码如下所示: public class MySQLiteHelper extends SQLiteOpenHelper { public static final...比较简单粗暴的方式是将数据库中现有的所有表都删除掉,然后重新创建,代码如下所示: public class MySQLiteHelper extends SQLiteOpenHelper { ..
使用SQLiteOpenHelper 使用Context#openOrCreateDatabase 创建 DB 文件时,可以使用SQLiteDatabase#openOrCreateDatabase。...使用SQLiteOpenHelper 当使用SQLiteOpenHelper时,开发人员不需要担心很多事情。...创建一个从SQLiteOpenHelper派生的类,并为构造器的参数指定DB名称(用于文件名)[12],然后满足上述安全要求的 DB 文件会自动创建。...对于文件安排,数据库名称(用于文件名)可以像SQLiteOpenHelper一样指定,文件将在满足上述安全要求的文件路径中自动创建。...另外,通过使用SQLiteDatabase#compileStatement()执行SELECT命令时,存在“仅获取第一个元素作为SELECT命令的结果”的限制,所以用法是有限的。
在解决问题之前,首先要分析问题,先动脑然后再动手 尽管如此,我还是依旧学习了一些contentprovider的用法,不为用在项目中,只是为了完善自己的知识体系。...只是一个集成了增删改查的类给外界提供一个调用的接口,那么使用的思路,应该也很明确了 首先是创建数据库,自定义一个数据库的帮助类,来创建数据库 public class MyDataOpenHelper extends SQLiteOpenHelper...} } 创建好数据库后创建一个自定义的provider public class CustomProvider extends ContentProvider { private SQLiteOpenHelper...String[] selectionArgs) { return 0; } } 在你创建时会提示你去继承5个方法,增删改查以及getType,在这里因为是为了熟悉provider的用法...可以看到这样集成在每次调用时会超级麻烦,还不如自己集成的,所以如果是一个应用之间数据增删该查,不建议你使用contentProvider 如果看过我以前的博客的可以发现我早在半年前就打算去总结一个contentprovider的用法
(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
Counter类的目的是用来跟踪值出现的次数。它是一个无序的容器类型,以字典的键值对形式存储,其中元素作为key,其计数作为value。计数值可以是任意的I...
当然,Android为了方便开发者的工作,已经提供了一个操作SQLite的工具类即SQLiteOpenHelper,在App开发时可由SQLiteOpenHelper派生出具体的业务表管理类。...但是,系统自带的SQLiteOpenHelper有个先天缺陷,就是它并未封装数据库管理类SQLiteDatabase,这造成一个后果:开发者需要在操作表之前中手工打开数据库连接,然后在操作结束后手工关闭数据库连接...以上的种种问题都制约了SQLiteOpenHelper的安全性。...同时ManagedSQLiteOpenHelper的用法与SQLiteOpenHelper几乎一模一样,唯一的区别是:数据表的增删改查语句需要放在use语句块之中,具体格式如下: use {
领取专属 10元无门槛券
手把手带您无忧上云