用SQL语句操作Sqlite数据库的示例代码

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();
    }
}

 

posted on 2017-02-23 09:06  LoaderMan  阅读(421)  评论(0编辑  收藏  举报

导航