IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Android --- SQLite增删改查的语句 -> 正文阅读

[大数据]Android --- SQLite增删改查的语句

SQLite是一款轻量级的关系型数据库,它运算速度快,占用资源少html
SQLiteDatabase mySql;

一、删除操作:

publicint delete (String table, String whereClause, String[] whereArgs)

String whereClause:零表示删除全部的行,有值时表示经过什么字段来删除,好比经过id删除sql

String[] whereArgs :绑定值给whereClause里面有占位符“?”,好比whereClause写的是”id=?”,whereArgs存入的是1,表示删除table里面id=1的这一行数据库

返回:影响的行数。数组

如:

mySql.delete("tb_user","id=?" , new String[]{"1","5"});

表示删除tb_user表里面id=1和id=5的数据

mySql.delete("tb_user","id=" + id, null);

表示删除tb_user表里面id=1的数据,这种状况只能删除一条数据,若是只删除一条数据,这种拼接的方式更便捷。

二、插入操作:

publiclong insert (String table, String nullColumnHack, ContentValues values)

String nullColumnHack :指定空值的字段的名称,当values参数为空或者里面没有内容的时候,咱们insert是会失败的(底层数据库不容许插入一个空行),为了防止这种状况,咱们要在这里指定一个列名,到时候若是发现将要插入的行为空行时,就会将你指定的这个列名的值设为null,而后再向数据库中插入。

ContentValues values:存放要添加的数据,ContentValues相似于MAP,(它提供了存取数据对应的put(String key,Xxx value)和getAsXxx(String key)方法, key为字段名称,value为字段值,Xxx指的是各类经常使用的数据类型,如:String、Integer等),无论第三个参数是否包含数据,执行Insert()方法必然会添加一条记录,

若是 ① values有值而且个数大于0,nullColumnHack能够为null,

② values为空,nullColumnHack必须添加一条除主键以外其余字段值(让改字段内容为null)。

SQLiteDatabase db = databaseHelper.getWritableDatabase();  

ContentValues values = new ContentValues();  

values.put("name", "测试数据");  

values.put("age", 4);  

long rowid = db.insert(“person”, null, values);//返回新添记录的行号,与主键id无关  

返回:新插入一行的行ID,或者发生错误的时候返回-1。

三、查询操作:

public Cursor rawQuery (String sql, String[] selectionArgs)**
**Stringsq
:sql语句;

String[]selectionArgs:sql语句中占位符参数的值,若是select语句没有使用占位符,该参数能够设置为null。

如:

Cursor cursor  = db.rawQuery("select name from tb_user where id=?", new String[]{"1"});

表示查询tb_user表里面id=1的数据

返回:游标,经过游标取出数据,

if (cursor.moveToFirst()){
    user= buildUser(cursor);
}
cursor.close();

public Cursor query (String table, String[] columns, String selection, String[] selectionArgs, String groupBy, String having, String orderBy)

String[]columns:想要显示的列,若为null则返回全部列,

Stringselection:where子句,声明要返回的行的要求,若是为空则返回表的全部行

String selection:where子句,声明要返回的行的要求,若是为空则返回表的全部行,好比经过id查询,where写的就是”id=?”

String[]selectionArgs: where子句对应的条件值

StringgroupBy: 分组方式,若为空则不分组.

StringorderBy:排序方式,为空则为默认排序方式

如:

Cursor cursor = query("user", new String[] { "username","password" },"username=?", "a",null,null, null, null);

表示:查询user表里面的内容,显示username=a的用户的username和password两个条件(其他内容都不显示,只差每条数据中的两行),不分组按默认方式排序。如何username=a的用户有不少,那么查出来的就不是一条,因此有排序方式和分组这些参数。

rawQuery和query的区别:

Cursor cursor = db.rawQuery(“select name from *** where id=?”, new String[]{“1”});
Cursor cursor = db.query(“***”, new String[]{“name”}, “id=?”, new String[]{“1”}, null, null, null);

query() 作的一件事就是帮你拼写 SQL 语句,而调用 rawQuery() 是你本身拼写好语句

四、更新操作:

public int update (String table, ContentValues values, String whereClause, String[] whereArgs)

ContentValues values:你须要更新的数据组成的一个ContentValues对象里面(上面插入操做的时候详细解释了)

String whereClause:更新的条件,为一个字符串。若是为null,则全部行都将更新;

String[] whereArgs:字符串数组,和whereClause配合使用。有两种用法,若是whereClause的条件已经直接给出,如“class = “ + num,num是传入的参数,则whereArgs可设为null。若是是”class= ?“,则?会被whereArgs这个数组中对应的值替换,whereArgs给出?表明的值,有多个?的,字符串数组里的值依次填入。

文章来源:http://www.javashuo.com/article/p-tjfhhkcd-bc.html

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-04-26 11:47:11  更:2022-04-26 11:48:46 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 3:54:25-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码