SQLite 语句详解

前端之家收集整理的这篇文章主要介绍了SQLite 语句详解前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。


sqliteOpenHelper 几个重要方法

onCreate(sqliteDatabase db);
用于初次使用软件时生成数据库
调用sqliteOpenHelper的getWritableDatabase()或者getReadableDatabase()方法获取用于操作数据库sqliteDatabase实例的时候,
如果数据库不存在,Android系统会自动生成一个数据库,接着调用onCreate()方法,onCreate()方法在初次生成数据库时才会被调用
在onCreate()方法里可以生成数据库表结构及添加一些应用使用到的初始化数据

onUpgrade(sqliteDatabase db,int oldVersion,int newVersion);
数据库的版本发生变化时会被调用,一般在软件升级时才需改变版本号
getWritableDatabase();
getReadableDatabase();
方法都可以获取一个用于操作数据库sqliteDatabase实例。但getWritableDatabase() 方法以读写方式打开数据库,一旦数据库的磁盘空间满了,数据库就只能读而不能写,倘若使用getWritableDatabase()打开数据库就会出错。getReadableDatabase()方法先以读写方式打开数据库,如果数据库的磁盘空间满了,就会打开失败,当打开失败后会继续尝试以只读方式打开数据库

sqliteDatabase常用方法
1、db.insert(table,nullColumnHack,values)
第一个参数是表名称,第二个参数是空列的默认值,第三个参数是ContentValues类型的一个封装了列名称和列值的Map;
2、db.delete(table,whereClause,whereArgs)
第一个参数是表名称,第二个参数是删除条件,第三个参数是删除条件值数组

3、db.update(table,values,whereArgs)
第一个参数是表名称,第二个参数是更行列ContentValues类型的键值对(Map),第三个参数是更新条件(where字句),第四个参数是更新条件数组
4、db.query(table,columns,selection,selectionArgs,groupBy,having,orderBy)
5、db.execsql(sql)// 执行任何sql语句
6、db.rawQuery(sql,selectionArgs)

Cursorquery(table,orderBy, limit)
各个参数的意义说明:
①table:表名称
②columns:列名称数组
③selection:条件字句,相当于where
④selectionArgs:条件字句,参数数组
⑤groupBy:分组列
⑥having:分组条件
⑦orderBy:排序列
⑧limit:分页查询限制

猜你在找的Sqlite相关文章