SQLite的使用(一):简介及原生SQL操作数据库

一、SQLite概述

SQLite 是一个轻量级的、嵌入式的、关系型数据库。它支持 SQL 语言,开源,可移植性好。它的数据是以单个文件形式存储的,存储位置为data/data/<项目文件夹>/database下。

二、常用类说明

SQLiteOpenHelper 抽象类:通过从此类继承实现用户类,来提供数据库创建、打开、关闭等操作。
SQLiteDatabase 数据库访问类:执行对数据库的插入记录、查询记录等操作。
Cursor 查询结构操作类:用来访问查询结果中的记录
 
2.1 SQLiteOpenHelper使用
SQLiteOpenHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) :构造方法,用来实例化对象
onCreate(SQLiteDatabase db):创建数据库时执行的方法
onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion):更新数据库时执行的方法
 
2.2 SQLiteDatabase使用
原生sql进行更新类操作
void execSQL(String sql);  执行无参的sql
void execSQL(String sql,Object[] bindArgs);执行带参数的sql
//DBHelper是自定义类,继承了SQLiteOpenHelper
        DBHelper dbHelper = new DBHelper(this,"ccshxt.db",null,1);
        SQLiteDatabase db = dbHelper.getWritableDatabase();
        db.execSQL("delete from student");
        db.execSQL("insert into student(name,age) values(?,?)",new Object[]{"张三",22});
        db.close();

原生sql进行查询类操作

Cursor rawQuery(String sql,String[] selectionArgs) 执行带参数的select语句;

 String sql = "SELECT * FROM student WHERE _id > ?";
        Cursor cursor = db.rawQuery(sql,new String[]{"4"});
        while (cursor.moveToNext()){
            Log.d(TAG, "name : "+cursor.getString(cursor.getColumnIndex("name")));
        }

 

posted @ 2016-03-02 16:53  四海兴唐  阅读(1777)  评论(0编辑  收藏  举报