美文网首页
嵌入式Sqlite数据库(一):SqliteOpenHelper

嵌入式Sqlite数据库(一):SqliteOpenHelper

作者: bug喵喵 | 来源:发表于2021-01-14 17:47 被阅读0次

A helper class to manage database creation and version management.

数据库的创建和版本管理的助手。

SQLiteOpenHelper 是一个抽象类,abstract class.

拥有成员变量,mName(数据库名称),mNewVersion(数据库版本),mDatabase(数据库)等.

构造函数需要传递,context,数据库名称,数据库版本等信息.

SQLiteOpenHelper(Context context, String name, CursorFactory factory,int version)

实现了以下函数:

getDatabaseName

getWritableDatabase

getReadableDatabase

onDowngrade

close

subclass需要实现以下函数

public abstract void onCreate(SQLiteDatabase db);

public abstract void onUpgrade(SQLiteDatabase db,int oldVersion,int newVersion);

面试题1

使用SQLiteOpenHelper的getReadableDatabase()获得的数据库能不能,做写的操作

面试题2

写一个子类继承SQLiteOpenHelper,并实现以下功能

1).创建一个版本为1的“diaryOpenHelper.db”的数据库,

2).同时创建一个 “diary” 表(包含一个_id主键并自增长,topic字符型100长度, content字符型1000长度)

3).在数据库版本变化时请删除diary表,并重新创建出diary表

publicclass DBHelper extends SQLiteOpenHelper{

public final static String DATABASENAME ="diaryOpenHelper.db";

public final static int DATABASEVERSION =1;//创建数据库

public DBHelper(Context context,Stringname,CursorFactory factory,int version)

{

super(context, name, factory,version);

}//创建表等机构性文件

public void onCreate(SQLiteDatabase db)

{

String sql ="create table diary"+"("+"_id integer primary key autoincrement,"+"topic varchar(100),"+"content varchar(1000)"+")";

db.execSQL(sql);

}//若数据库版本有更新,则调用此方法

public void onUpgrade(SQLiteDatabasedb,int oldVersion,int newVersion)

{

String sql = "drop table if exists diary";

db.execSQL(sql);

this.onCreate(db);

}

}

文末

欢迎关注我的简书,分享Android干货,交流Android技术。
对文章有何见解,或者有何技术问题,都可以在评论区一起留言讨论,我会虔诚为你解答。
最后,如果你想知道更多Android的知识或需要其他资料我这里均免费分享,只需你点赞+评论找我获取哦

相关文章

  • 嵌入式Sqlite数据库(一):SqliteOpenHelper

    A helper class to manage database creation and version ma...

  • 3.21

    数据库 Android中的数据库,sqlite 创建数据库 创建一个类继承 SQLiteOpenHelper需要重...

  • WCDB-数据库连接池源码解析

    数据库类的简介 SQLiteOpenHelper:管理SQLite的帮助类,提供获取SQLiteDatabase实...

  • SQLite语句以及FMDB基本使用方法

    SQLite 什么是SQLite SQLite是一款轻型的嵌入式数据库它占用资源非常的低,在嵌入式设备中,可能只需...

  • SQLite源码解析

    一、SQLite源码解析 (1)SQLiteOpenHelper源码 (2)SQLiteOpenHelper.ge...

  • 数据库之SQLite(平凡之路)

    什么是SQLite?数据库存储数据的步骤 ●SQLite是一款轻型的嵌入式数据库,它占用资源非常的低,在嵌入式设备...

  • SQLite创建数据库

    SQLite数据库用来储存大量的结构相同的数据,主要参照官方文档 创建数据库 继承SQLiteOpenHelper...

  • SQLite的基础知识

    数据库SQLite的基础语法 SQLite 1. 什么是SQLite: (1) SQLite是一款轻型的嵌入式数据...

  • 13 - SQLite 、 FMDB

    1 - 什么是SQlite SQLite是一款轻型的嵌入式数据库 SQLite数据库:可以存储大批量的数据 它占用...

  • sqlite数据库升级

    Android SQLite数据库版本升级的管理实现 我们知道在SQLiteOpenHelper的构造方法: su...

网友评论

      本文标题:嵌入式Sqlite数据库(一):SqliteOpenHelper

      本文链接:https://www.haomeiwen.com/subject/jfnvaktx.html