在android 开始当中,可以通过两种方式来建立自己的sqlLite 数据库,① 在外边建好,导入到sd卡中,这种方式会使其他应用访问到自己的数据库,不建议使用,第二种方式,继承SqLiteOpenHelper 类来实现数据库的建立
onCreate 方法只会在类实例化后调用获取SqLiteDataBase 对象的时候执行一次,若要版本更新则执行onUpGrade方法
/**
* Description: xxxx<br/>
* Copyright (c) , 2016, Jansonxu <br/>
* This program is protected by copyright laws. <br/>
* Program Name:Dbhelper.java <br/>
* Date: 2016年3月9日
*
* @author 李阳
* @version : 1.0
*/
package com.example.contentprovider.util;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class Dbhelper extends SQLiteOpenHelper {
/**
* @param context
* @param name
* @param factory
* @param version
*/
public Dbhelper(Context context) {
super(context, "user_1.db", null, 1);
}
@Override
public void onCreate(SQLiteDatabase db) {
//① 用户表
db.execSQL("create table t_user(_id integer primary key, uname,upass,money)");
//② 用户订单表
db.execSQL("create table t_order(_id integer primary key,user_id,productName,price)");
//③ 向用户表中 插入数据 id 会自动加
db.execSQL("insert into t_user(uname,upass,money) values('琪琪','111','20000')");
db.execSQL("insert into t_user(uname,upass,money) values('刀刀','111','2000')");
db.execSQL("insert into t_user(uname,upass,money) values('小猫','111','200')");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
if(newVersion > oldVersion){
//先判断存在不存在
db.execSQL("drop table t_user if exists t_user ");
db.execSQL("drop table t_user if exists t_order ");
onCreate(db);
}
}
}