Android SQLite数据库基础(1)

SQLiteOpenHelper类:是一个抽象类,通过从此类继承实现用户类,来提供数据库打开、关闭等操作函数。

SQLiteDatabase 类:数据库访问类:执行对数据库的插入记录、查询记录等操作。

SQLiteCursor类: 查询结构操作类:用来访问查询结果中的记录。

本小节先讨论下SQLiteOpenHelper类。

1、必须实现的方法为:“onCreate()”用于创建数据时调用,一般用于做初始化工作。

            “onUpdate()”方法用来更新数据库。

2、需完成super

3、SQLiteOpenHelper提供方法getReadableDatabase()和getWriteableDatabase()方法来获得一个SQLiteDatabase对象,在对象可以允许访问数据库,而不管是在读或写的模式下。

代码:

package com.example.sqllites.dbs;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
/**
*
* @author Lin
* SQLite帮助类
*/
public class sqlite_Persondb extends SQLiteOpenHelper{

/**
* sqlite数据库构造方法,用来定义数据库名称,数据库查询结果集,数据库版本
* super了父类的方法
* @param context:为上下文
*/
public sqlite_Persondb(Context context){
super(context,"lin_Person.db",null,1);
}
/**
* sqlite数据库构造方法,用来定义数据库名称,数据库查询结果集,数据库版本
* @param context 传入上下文参数
* @param name 传入数据库名称
* @param factory 传入游标方式,null为默认格式
* @param version 传入数据库版本,要求1以上,否则会报错
*/
public sqlite_Persondb(Context context, String name, CursorFactory factory,
int version) {
super(context, name, factory, version);
}
/**
* 第一次创建数据库调用的方法
* 传入db为被创建的数据库,在这里假定为lin_Person.db
* execSQL创建数据库表内容,忽略大小写。
*/
@Override
public void onCreate(SQLiteDatabase db) {
/**
* 语法:create table 表名(列名 类型 设置主键(可选) 设置自动增长(可选));
* @param primary key 设置主键
* @param autoincrement 自动增长
*/
db.execSQL("create table person(id integer primary key autoincrement,name varchar(20),phoneNum varchar(11))");
}

/**
* 升级数据库
*/

@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
  //暂忽略
}

}

时间: 2024-09-27 02:32:45

Android SQLite数据库基础(1)的相关文章

Android SQLite数据库操作示例

SQLite介绍 SQLite是一个非常流行的嵌入式数据库,它支持SQL语言,并且只利用很少的内存就有很好的性能.此外,它还是开源的,任何人都可以使用它. SQLite由以下几个组件组成:SQL编译器.内核.后端以及附件.SQLite通过利用虚拟机和虚拟数据库引擎(VDBE),使调试.修改和扩展SQLite的内核变得更加方便. SQLite支持的数据类型参考链接:http://blog.csdn.net/wzy_1988/article/details/36005947 Android在运行时(

Android Sqlite数据库加密

Android使用的是开源的SQLite数据库,数据库本身没有加密,加密思路通常有两个: 1. 对几个关键的字段使用加密算法,再存入数据库 2. 对整个数据库进行加密 SQLite数据库加密工具: 收费工具: SSE(SQLite Encryption Extension) 免费工具: SQLCipher SQLCipher使用: SQLCipher是完全开源的软件,提供256-bit AES加密 源码编译: 1. OpenSSL编译 SQLCipher源码编译需要依赖OpenSSL提供的lib

[Android] SQLite数据库之增删改查基础操作

    在编程中常常会遇到数据库的操作,而Android系统内置了SQLite,它是一款轻型数据库,遵守事务ACID的关系型数据库管理系统,它占用的资源非常低,可以支持Windows/Linux/Unix等主流操作系统,同一时候可以跟非常多程序语言如C#.PHP.Java等相结合.以下先回想SQL的基本语句,再讲述Android的基本操作. 一. adb shell回想SQL语句     首先,我感觉自己整个大学印象最深的几门课就包含<数据库>,所以想先回想SQL增删改查的基本语句.而在And

Android SQLite数据库基本操作

程序的最主要的功能在于对数据进行操作,通过对数据进行操作来实现某个功能.而数据库就是很重要的一个方面的,Android中内置了小巧轻便,功能却很强的一个数据库–SQLite数据库.那么就来看一下在Android程序中怎么去操作SQLite数据库来实现一些需求的吧,仍然以一个小例子开始: 在创建Android项目之前,我们应该想一下我们要定义的数据库的相关信息和里面的表格的相关信息,为了日后数据库的更新更加方便 ,我们可以用一个专门的类保存数据库的相关信息,以后如果要更新数据库的话只需要该动这个类

Android SQLite数据库使用示例

简单介绍一下,现在的主流移动设备像Android.iPhone等都使用SQLite作为复杂数据的存储引擎,在我们为移动设备开发应用程序时,也许就要使用到SQLite来存储我们大量的数据,所以我们就需要掌握移动设备上的SQLite开发技巧.对于Android平台来说,系统内置了丰富的API来供开发人员操作SQLite,我们可以轻松的完成对数据的存取. 下面我们用SQLite来开发一个英语词典.下图是项目结构-- MySQLite.java package sn.qdj.sqlitedemo; im

Android Sqlite 数据库版本更新

http://87426628.blog.163.com/blog/static/6069361820131069485844/ 1.自己写一个类继承自SqliteOpenHelper 2.会实现SqliteOpenHelper的两个方法 onCreate与onUpgrade,google文档对两个回调方法的解释是创建数据库的时候调用与更新数据库的版本的时候调用 3.Sqlite数据库主要是用来缓存应用的数据,而应用却是一直在更新版本,相应的数据的表的字段也会一直增加会改变或减少 4.这个时候就

Android SQLite数据库版本升级原理解析

Android使用SQLite数据库保存数据,那数据库版本升级是怎么回事呢,这里说一下. 一.软件v1.0 安装v1.0,假设v1.0版本只有一个account表,这时走继承SQLiteOpenHelper的onCreate,不走onUpgrade. 1.v1.0(直接安装v1.0) 二.软件v2.0 有2种安装软件情况: 1.v1.0   -->  v2.0              不走onCreate,走onUpgrade 2.v2.0(直接安装v2.0)          走onCrea

Andoird - SQLite 数据库 基础教程

链接来源 http://www.tutorialspoint.com/android/android_sqlite_database.htm SQLite是一个开源的SQL数据库,这个数据库把数据存储到设备的一个文本文件里.Android里面已经集成了SQLite数据库工具. SQLite 支持所有的关系数据库特点.为了进入SQLite数据,你不需要建立任何像JDBC,ODBC之类的连接. 数据库-包 主要的包是android.database.sqlite,这个包里面包含了管理你自己数据库的类

android sqlite数据库操作

sqlite有一点不同于其他常见数据库,就是sqlite数据库是存成文件的,可以直接把该文件从手机里导出来,以文件的形式存在,然后放到电脑上查看. Android操作数据库有如下步骤: 1.继承SQLiteOpenHelper,实现里面的方法. public class MyDbHelper extends SQLiteOpenHelper {     public MyDbHelper(Context context) {         super(context, "db3",