import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
/**
* 创建数据库帮助类 extends SQLiteOpenHelper
*/
public class MyDbOpenHelper extends SQLiteOpenHelper {
/**
* 构造方法
*
* @param context
* 上下文
* @param name
* 数据库名称
* @param factory
* null
* @param version
* 数据库的版本号 >=1
* 只能升级不能降级
*/
public MyDbOpenHelper(Context context) {
super(context,"Data.db",null,1);
}
/**
* 第一次创建数据库的时候调用
* 适合初始化数据库的表
*/
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table stu(_id integer primary key autoincrement,name varchar(20),num varchar(20))");
}
/**
* 数据库升级时,调用
* 修改数据库的表
*/
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
System.out.println("onUpgrade");
}
}
import android.app.Activity;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void insert(View v) {
// 1. 在内存中创建数据库帮助类的对象
MyDbOpenHelper helper = new MyDbOpenHelper(this);
// 2. 在磁盘上创建数据库文件
SQLiteDatabase db = helper.getWritableDatabase();
db.execSQL("insert into stu('name','num') values (?,?)", new Object[] { "AAA", "110" });
// 释放资源
db.close();
}
public void delete(View v) {
// 1. 在内存中创建数据库帮助类的对象
MyDbOpenHelper helper = new MyDbOpenHelper(this);
// 2. 在磁盘上创建数据库文件
SQLiteDatabase db = helper.getWritableDatabase();
db.execSQL("delete from stu");
// 释放资源
db.close();
}
public void update(View v) {
// 1. 在内存中创建数据库帮助类的对象
MyDbOpenHelper helper = new MyDbOpenHelper(this);
// 2. 在磁盘上创建数据库文件
SQLiteDatabase db = helper.getWritableDatabase();
db.execSQL("update stu set name=?",new String[]{"yadan"});
// 释放资源
db.close();
}
public void query(View v){
// 1. 在内存中创建数据库帮助类的对象
MyDbOpenHelper helper = new MyDbOpenHelper(this);
// 2. 在磁盘上创建数据库文件
SQLiteDatabase db = helper.getWritableDatabase();
Cursor cursor = db.rawQuery("select * from stu", null);
while(cursor.moveToNext()){
String id = cursor.getString(0);
String name = cursor.getString(1);
String num = cursor.getString(2);
}
// 释放资源
db.close();
}
}