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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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")));
        }

 

以上是关于SQLite的使用:简介及原生SQL操作数据库的主要内容,如果未能解决你的问题,请参考以下文章

SQLite 常用语句及 MeasSQLlite 使用

Laravel操作数据库 - 原生SQL语句

uniapp 原生sqlite本地数据库管理 Ba-Sqlite

Android ORM——初识greenDAO 3及使用greenDAO 3前应该掌握的一些知识点

Android ORM——初识greenDAO 3及使用greenDAO 3前应该掌握的一些知识点

轻量级NoSQL数据库与PythonWeb-Flask框架组合使用1-SQLite3介绍及安装教程