android轻量型数据库sqlite的使用方法汇总
声明:主要是对sqlite的使用做一下简单的汇总。
首先建立数据库和建立数据表
[html]
/**
* @FILE:DBOpenHelper.java
* @AUTHOR:Administrator
* @DATE:2013-5-14 下午10:06:29
**/
package com.yehui.service;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
/*******************************************
*
* @CLASS:DBOpenHelper
* @DESCRIPTION:sqlite数据库必须继承SQLiteOpenHelper(抽象类)
* @AUTHOR:Administrator
* @VERSION:v1.0
* @DATE:2013-5-14 下午10:06:29
*******************************************/
public class DBOpenHelper extends SQLiteOpenHelper {
/**
* create a instance DBOpenHelper.
*
* @param context
* 上下文对象
* @param name
* 数据库名称
* @param factory
* CursorFactory
* @param version
* 版本号(第一次生成数据库时,版本号是1,只执行一次)
*/
public DBOpenHelper(Context context) {
super(context, "yehui.db", null, 1);
}
/*
* (non-Javadoc)当创建数据库的时候就会创建下面的表,可以在这里创建多张表:表中的字段的类型可以完全没有,
* varchar(20)长度并不能限制。可以输入超过20字符的长度。
*
* @see
* android.database.sqlite.SQLiteOpenHelper#onCreate(android.database.sqlite
* .SQLiteDatabase)
*/
@Override
public void onCreate(SQLiteDatabase db) {
String sql = "create table person(personid integer primary key autoincrement, name varchar(20))";
// 执行这句sql
db.execSQL(sql);
}
/*
* (non-Javadoc)对数据库更新,可以在这个方法里面对数据表做alter.:也就是说当 super(context, "yehui.db",
* null, 1);这里面的版本号发生改变的时候就会调用这个方法,执行完成后将数据库的版本号设置为新的版本号
*
* @see
* android.database.sqlite.SQLiteOpenHelper#onUpgrade(android.database.sqlite
* .SQLiteDatabase, int, int)
*/
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
String sql = "ALTER TABLE PERSON ADD PHONE VARCHAR(12) NULL";
db.execSQL(sql);
}
}
/**
* @FILE:DBOpenHelper.java
* @AUTHOR:Administrator
* @DATE:2013-5-14 下午10:06:29
**/
package com.yehui.service;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
/*******************************************
*
* @CLASS:DBOpenHelper
* @DESCRIPTION:sqlite数据库必须继承SQLiteOpenHelper(抽象类)
* @AUTHOR:Administrator
* @VERSION:v1.0
* @DATE:2013-5-14 下午10:06:29
*******************************************/
public class DBOpenHelper extends SQLiteOpenHelper {
/**
* create a instance DBOpenHelper.
*
* @param context
* 上下文对象
* @param name
* 数据库名称
* @param factory
* CursorFactory
* @param version
* 版本号(第一次生成数据库时,版本号是1,只执行一次)
*/
public DBOpenHelper(Context context) {
super(context, "yehui.db", null, 1);
}
/*
* (non-Javadoc)当创建数据库的时候就会创建下面的表,可以在这里创建多张表:表中的字段的类型可以完全没有,
* varchar(20)长度并不能限制。可以输入超过20字符的长度。
*
* @see
* android.database.sqlite.SQLiteOpenHelper#onCreate(android.database.sqlite
* .SQLiteDatabase)
*/
@Override
public void onCreate(SQLiteDatabase db) {
String sql = "create table person(personid integer primary key autoincrement, name varchar(20))";
// 执行这句sql
db.execSQL(sql);
}
/*
* (non-Javadoc)对数据库更新,可以在这个方法里面对数据表做alter.:也就是说当 super(context, "yehui.db",
* null, 1);这里面的版本号发生改变的时候就会调用这个方法,执行完成后将数据库的版本号设置为新的版本号
*
* @see
* android.database.sqlite.SQLiteOpenHelper#onUpgrade(android.database.sqlite
* .SQLiteDatabase, int, int)
*/
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
String sql = "ALTER TABLE PERSON ADD PHONE VARCHAR(12) NULL";
db.execSQL(sql);
}
}
其次,为了方法建立一个bean来对应表中的内容:
[html]
/**
* @FILE:Person.java
* @AUTHOR:Administrator
* @DATE:2013-5-14 下午10:31:18
**/
package com.yehui.entity;
/*******************************************
*
* @CLASS:Person
* @DESCRIPTION:bean
* @AUTHOR:Administrator
* @VERSION:v1.0
* @DATE:2013-5-14 下午10:31:18
*******************************************/
public class Person {
private Integer id;
private String name;
private String phone;
&
补充:移动开发 , Android ,