Android之SQLite

(1)创建一个Helper,这玩意可以用来创建数据库,并且利用get可以返回数据库对象
public class My_SQL_Helper extends SQLiteOpenHelper {
    private String TAG="hh";
    //这玩意用了会创建一个自己命名的数据库
    public My_SQL_Helper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
        super(context, name, factory, version);
    }

    //来一个SQL创建表的指令
    private String create_book_table="create table Book_database(id integer primary key autoincrement," +
            "book_name text," +
            "author text," +
            "page integer)";

    @Override
    public void onCreate(SQLiteDatabase sqLiteDatabase) {
        sqLiteDatabase.execSQL(create_book_table);
        Log.i(TAG, "onCreate: 建立了数据库");
    }

    @Override
    public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {

    }
}
(2)new一个Helper实例,并利用它来创建和获取数据库
private SQLiteDatabase db;
//初始化一下数据库
    private void get_database(){
        My_SQL_Helper helper=new My_SQL_Helper(this,"DataBase.db",null,1);
         db=helper.getWritableDatabase();

    }
(3)利用点击事件实现CURD操作(注意给Button注册监听器呀,以及注意表名和变量名)
@Override
    public void onClick(View view) {
        switch (view.getId()){
            case R.id.add_item:
                Log.i(TAG, "onClick: begin add");
                db.execSQL("insert into Book_database(book_name,author,page) values(?,?,?)",
                        new String[]{"a","aa","11"});
                db.execSQL("insert into Book_database(book_name,author,page) values(?,?,?)",
                        new String[]{"b","bb","11"});
                db.execSQL("insert into Book_database(book_name,author,page) values(?,?,?)",
                        new String[]{"c","cc","11"});
                db.execSQL("insert into Book_database(book_name,author,page) values(?,?,?)",
                        new String[]{"d","dd","11"});
                db.execSQL("insert into Book_database(book_name,author,page) values(?,?,?)",
                        new String[]{"e","ee","11"});
                Log.i(TAG, "onClick: add");
                break;
            case R.id.delete_item:
                Log.i(TAG, "onClick: begin delete");
                db.execSQL("delete from Book_database where book_name=?or book_name=?",new String[]{"b","c"});
                Log.i(TAG, "onClick: delete");
                break;
            case R.id.update_item:
                Log.i(TAG, "onClick: begin update");
                db.execSQL("update Book_database set page=? where book_name=? or author=?",
                        new String[]{"22","d","ee"});
                Log.i(TAG, "onClick: update");
                break;
            case R.id.query_tem:
                Log.i(TAG, "onClick: begin query");
                Cursor cursor=db.query("Book_database",null,null,null,null,
                        null,null);
                while (cursor.moveToNext()){
                    String name=cursor.getString(cursor.getColumnIndex("book_name"));
                    String author=cursor.getString(cursor.getColumnIndex("author"));
                    int page=cursor.getInt(cursor.getColumnIndex("page"));

                    Log.i(TAG, "\n"+name+"  "+author+"  "+page+"");
                }
                Log.i(TAG, "onClick: query");
                break;
                default:
                    Log.i(TAG, "onClick: break");
                    break;
        }

    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值