创建数据库

Android 不自动提供数据库。在 Android 应用程序中使用 SQLite,必须自己创建数据库,然后创建表、索引,填充数据。Android 提供了 SQLiteOpenHelper 帮助你创建一个数据库,你只要继承 SQLiteOpenHelper 类,就可以轻松的创建数据库。SQLiteOpenHelper 类根据开发应用程序的需要,封装了创建和更新数据库使用的逻辑。SQLiteOpenHelper 的子类,至少需要实现三个方法:

构造函数,调用父类 SQLiteOpenHelper 的构造函数。这个方法需要四个参数:上下文环境(例如,一个 Activity),数据库名字,一个可选的游标工厂(通常是 Null),一个代表你正在使用的数据库模型版本的整数。

onCreate()方法,它需要一个 SQLiteDatabase 对象作为参数,根据需要对这个对象填充表和初始化数据。

onUpgrage() 方法,它需要三个参数,一个 SQLiteDatabase 对象,一个旧的版本号和一个新的版本号,这样你就可以清楚如何把一个数据库从旧的模型转变到新的模型。

下面示例代码展示了如何继承 SQLiteOpenHelper 创建数据库:

public class DatabaseHelper extends SQLiteOpenHelper {

DatabaseHelper(Context context, String name, CursorFactory cursorFactory, int version)

{

super(context, name, cursorFactory, version);

}

@Override

public void onCreate(SQLiteDatabase db) {

// TODO 创建数据库后,对数据库的操作

}

@Override

public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

// TODO 更改数据库版本的操作

}

super.onOpen(db);

// TODO 每次成功打开数据库后首先被执行

}

}

复制代码

接下来讨论具体如何创建表、插入数据、删除表等等。调用 getReadableDatabase() 或 getWriteableDatabase() 方法,你可以得到 SQLiteDatabase 实例,具体调用那个方法,取决于你是否需要改变数据库的内容:

db=(new DatabaseHelper(getContext())).getWritableDatabase();

return (db == null) ? false : true;

复制代码

上面这段代码会返回一个 SQLiteDatabase 类的实例,使用这个对象,你就可以查询或者修改数据库。

当你完成了对数据库的操作(例如你的 Activity 已经关闭),需要调用 SQLiteDatabase 的 Close() 方法来释放掉数据库连接。

android dbinfo函数,android SQLiteDatabase中的update函数用法?相关推荐

  1. python文件定位函数_C语言中文件定位函数总结

    C语言中文件定位函数主要是:fseek, ftell, fsetpos, fgetpos. 先来讲前两个函数,这是最基本的定位函数: fseek函数:能把文件指针移动到文件任何位置,其原型是:int ...

  2. rectpuls函数 matlab,Matlab中的rectpuls函数解析

    Matlab中的rectpuls函数解析 Matlab中的rectpuls函数解析 1.先看Matlab中的解释: This MATLAB function returns a continuous, ...

  3. Oracle中to_char函数和MySQL中的str_to_date函数区别

    标题Oracle中to_char函数和MySQL中的str_to_date函数 1. str_to_date()----->相当于Oracle中的to_char(): 字符串转换为日期格式 (1 ...

  4. 主成分分析函数Matlab,matlab中主成分分析的函数1

    princomp函数,pcacov函数,pcares函数,barttest matlab中主成分分析的函数 1. princomp函数 功能:主成分分析 格式:PC=princomp(X) [PC,S ...

  5. C中的qsort函数和C++中的sort函数的理解与使用

    一.qsort()函数 原型:_CRTIMP void __cdecl qsort (void*, size_t, size_t,int (*)(const void*, const void*)); ...

  6. php new对象 调用函数,关于JS中new调用函数的原理介绍

    这篇文章主要介绍了关于JS中new调用函数的原理介绍,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 JavaScript 中经常使用构造函数创建对象(通过 new 操作符调用一个函数) ...

  7. python中mat函数_python matplotlib中的subplot函数使用详解

    python里面的matplotlib.pylot是大家比较常用的,功能也还不错的一个包.基本框架比较简单,但是做一个功能完善且比较好看整洁的图,免不了要网上查找一些函数.于是,为了节省时间,可以一劳 ...

  8. python中round函数参数_python中关于round函数的小坑

    round函数很简单,对浮点数进行近似取值,保留几位小数.比如 >>> round(10.0/3, 2) 3.33 >>> round(20/7) 3 第一个参数是 ...

  9. oracle实现mysql的if_oracle中decode函数 VS mysql中的if函数和case函数

    oracle中有decode函数,如下: select sum(decode(sex,'男',0,1)) 男生数 from school: 统计男生数目,含义为:decode()中sex字段为男时,用 ...

最新文章

  1. 程序员笔试面试后上机_2021年国考笔试成绩查询后,面试准备阶段需要做好四方面...
  2. 大型网站压力测试及优化方案
  3. OKR实施过程中的一些误区
  4. 福布斯 : 企业市场Chrome任重道远
  5. WebGIS在行业中应用的演变
  6. POJ 1724 二维费用最短路
  7. 【控制】《多智能体系统的动力学分析与设计》徐光辉老师-第1章-绪论
  8. 端计算(9)-android opencv(1)
  9. python怎样把两个图画到一起_python实现两张图片拼接为一张图片并保存
  10. 数据结构和算法(05)---链表(c++)
  11. 【笔记目录】南邮(通达)计算机专业基础
  12. linux buffer 刷到磁盘,Linux下的磁盘缓存 linux page buffer cache深入理解
  13. kafka 重新分配partition
  14. java web sqlmapapi,Sqlmap的sqlmapapi.py简单使用
  15. 龙芯2F 逸珑迷你笔记本
  16. debian关闭图形界面_禁止debian自动启动图形界面
  17. 餐厅座位表 canvas实现
  18. Flink_Flink ON YARN containerized.heap-cutoff-min 内存调整
  19. 公司新来了个软件测试工程师,一副毛头小子的样儿,哪想到是新一代卷王...
  20. 植物大战僵尸对战版(Android)

热门文章

  1. Azure ARM 上传自定义镜像
  2. 三层交换机启用OSPF后,如何实现数据转发路径
  3. 当Node.js遇见Docker
  4. bzoj2038[2009国家集训队]小Z的袜子(hose)
  5. C++数据类型与C#对应关系 c#调用WINDWOS API时,非常有用
  6. 2008年不错的图书
  7. zero copy图解
  8. luogu P2018 消息传递
  9. 《设计模式之禅》之——六大设计原则解读
  10. OAuth2实现原理