您的位置:首页 > 移动开发 > Android开发

Android学习——SQLite

2014-12-09 21:19 183 查看
每个应用程序都要使用数据,Android应用程序也不例外,Android使用开源的、与操作系统无关的SQL数据库 --大名鼎鼎的SQLite。SQLite是一款轻量级数据库,它的设计目的是嵌入式,而且它占用的资源非常少,在嵌入式设备中,可能只需要几百KB,这也是Android 系统采用 SQLite 数据库的原因之一。

  要使用SQLite必须创建连接,连接过程如下:

package com.jky.sqlite.db;

import android.content.ContentValues;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;

import com.jky.sqlite.util.Constant;

public class MyDBOpenHelper extends SQLiteOpenHelper{

private static final String TAG = "MyDBOpenHelper";

/**
* 必须要你实现的一个构造方法
* @param context 上下文
* @param name 数据库的名字
* @param factory 游标工厂 null
* @param version 数据库的版本 大于0
*/
public MyDBOpenHelper(Context context) {
super(context, Constant.DB_NAME, null, Constant.DB_VERSION);
}

/**
* onCreate 第一次调用的时候执行的方法
* 这个方法回去判断 你当前的数据库存不存在 如果存在 就不调用了
* 如果存在 反复new 这个MyDBOpenHelper对象也不会调用
*/
@Override
public void onCreate(SQLiteDatabase db) {
//创建表 才是真正算是数据库
db.execSQL("create table if not exists " + Constant.TABLE_NAME +"("
+ "id integer primary key autoincrement,"
+ "name varchar not null,"
+ "number varchar)");

System.out.println("onCreate");
}

/**
* onUpgrade
* 当你的数据库需要更新或者修改的时候 调用的方式
* 当你的数据库版本发生改变的时候 会自动用这个方法
* 比如 我想加一张表
*/
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
//更新表结构
Log.v(TAG, "我是提示信息");
Log.d(TAG, "我是调试信息");
Log.i(TAG, "我是信息");
Log.w(TAG, "警告信息");
Log.e(TAG, "错误信息");

//增加一个表字段
db.execSQL(" alter table " + Constant.TABLE_NAME + " add money float ");

ContentValues values = new ContentValues();
values.put("money", 200);
//初始化一些钱给用户
db.update(Constant.TABLE_NAME, values, " name = ?", new String[]{"laowang"});

values.put("money", 0);
//初始化一些钱给用户
db.update(Constant.TABLE_NAME, values, " name = ?", new String[]{"tom"});
}

}
时间关系,今天就先到这了吧
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: