在Android开发中也有数据库的存在,最近有空,把以前写的一个便签来讲述一下Android中的数据库,跟大家分享分享的,希望对大家有所帮助。

SQLite简介

SQLite,是一款轻量级的关系型数据库。由于它占用的资源非常少,所以在很多嵌入式设备都是用SQLite来存储数据。

SQLite数据库操作和常用的数据库操作差不多;如:MySQL......; 增删改查等语句操作基本相同; 今天给大家Android SQLite语句相关操作的两种方式

首先来看一下我的便签的效果图:(图中操作顺序:查询,添加,修改,删除)

1:创建数据库和表,创建一个类;如下:

public class HelperSQLite extends SQLiteOpenHelper{

private SQLiteDatabase sqLiteDatabase;

/***

* 创建数据库

* @param context

*/

public HelperSQLite(Context context){

super(context, UtilDB.DATABASE_NAME, null, UtilDB.DATABASE_VERION);

sqLiteDatabase=this.getWritableDatabase();

}

/***

* 创建表

* @param db

*/

@Override

public void onCreate(SQLiteDatabase db) {

db.execSQL(UtilDB.showCreateSql());

}

@Override

public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

//用于更新

}

}

2:介绍添加数据的两种方法

//方式1 SQL语句的方式

String stu_sql="insert into "+UtilDB.DATABASE_TABLE+"("+UtilDB.USER_CONTENT+","+UtilDB.USER_YEAR+","+UtilDB.USER_TIME+") values('"+userContent+"','"+userYear+"','"+userTime+"')";

sqLiteDatabase.execSQL(stu_sql);

//方式2

ContentValues contentValues=new ContentValues();

contentValues.put(UtilDB.USER_CONTENT,userContent);

contentValues.put(UtilDB.USER_YEAR,userYear);

contentValues.put(UtilDB.USER_TIME,userTime);

return sqLiteDatabase.insert(UtilDB.DATABASE_TABLE,null,contentValues)>0;//成功返回true

3:删除的两种方式

String sql = "delete from "+UtilDB.DATABASE_TABLE+" where "+UtilDB.USER_ID+" = "+id;

sqLiteDatabase.execSQL(sql);

String sql=UtilDB.USER_ID+"=?";

String[] contentValuesArray=new String[]{String.valueOf(id)};

return sqLiteDatabase.delete(UtilDB.DATABASE_TABLE,sql,contentValuesArray)>0;//成功返回true

4:修改的两种方式

/方式1

String sql = "update "+UtilDB.DATABASE_TABLE+" set "+UtilDB.USER_CONTENT+" = '"+content+"',"

+UtilDB.USER_YEAR+" = '"+userYear+"',"+UtilDB.USER_TIME+"='"+userTime+"' where "+UtilDB.USER_ID+" = "+id;

sqLiteDatabase.execSQL(sql);

//方式2

ContentValues contentValues=new ContentValues();

contentValues.put(UtilDB.USER_CONTENT,content);

contentValues.put(UtilDB.USER_YEAR,userYear);

contentValues.put(UtilDB.USER_TIME,userTime);

String sql=UtilDB.USER_ID+"=?";

String[] strings=new String[]{id};

return sqLiteDatabase.update(UtilDB.DATABASE_TABLE,contentValues,sql,strings)>0; //成功返回true

5:查询数据  便签中  使用的是降序排列的

Cursor cursor=sqLiteDatabase.query(UtilDB.DATABASE_TABLE,null,null,null,null,null,UtilDB.USER_ID+" desc");//条件查询降序排序

方式1

List list=new ArrayList();

Cursor cursor=sqLiteDatabase.query(UtilDB.DATABASE_TABLE,null,null,null,null,null,UtilDB.USER_ID+" desc");

if (cursor!=null){

while (cursor.moveToNext()){

UserInfo userInfo=new UserInfo();

userInfo.setId(String.valueOf(cursor.getInt(cursor.getColumnIndex(UtilDB.USER_ID))));

userInfo.setUserContent(cursor.getString(cursor.getColumnIndex(UtilDB.USER_CONTENT)));

userInfo.setUserYear(cursor.getString(cursor.getColumnIndex(UtilDB.USER_YEAR)));

userInfo.setUserTime(cursor.getString(cursor.getColumnIndex(UtilDB.USER_TIME)));

list.add(userInfo);

}

}

方式2:通过游标得到数据

List list=new ArrayList();

Cursor cursor=sqLiteDatabase.query(UtilDB.DATABASE_TABLE,null,null,null,null,null,UtilDB.USER_ID+" desc");

if (cursor!=null){

while (cursor.moveToNext()){//通过游标得到数据

UserInfo userInfo=new UserInfo();

userInfo.setId(String.valueOf(cursor.getInt(0)));

userInfo.setUserContent(cursor.getString(1));

userInfo.setUserYear(cursor.getString(2));

userInfo.setUserTime(cursor.getString(3));

list.add(userInfo);

}

}

由于代码太多,就不一一贴出来了,直接下载即可,源码点击下载

不足之处请留言指正!有问题的可以给我留言!谢谢!

android studio便签需求介绍,Android我的便签-----SQLite的使用方法相关推荐

  1. android studio 的debug证书在哪里,Android Studio debug.keystore位置介绍

    如果你在网上搜debug.keystore的位置,大部分文章都会告诉你在 C:\Users\XXX\.android 目录下,但我电脑的该目录下确实没有这个文件,放入同事的debug.keystore ...

  2. 在Android Studio中显示函数介绍

    今天百度了一下怎样在Android Studio中显示函数介绍,看到都是说选中函数按F2就可以,但是我却不行,有跟我一样问题的同学请往下看: 1.打开你的sdk manager,看看你的documen ...

  3. android apt最新版本,解决Android studio 2.3升级到Android studio 3.0 后apt报错问题

    解决Android studio 2.3升级到Android studio 3.0 后apt报错问题 发布时间:2020-09-16 19:59:42 来源:脚本之家 阅读:62 作者:哈特中尉 1. ...

  4. 1.Android简介,Android Studio安装,创建运行Android程序

    文章目录 1.了解通信技术 2.Android简介   2.1 Android起源   2.2 Android历史版本 3.Android Studio开发环境的搭建 3.1 Android Stud ...

  5. Android studio通过荣耀20调试Android程序

    Android studio通过荣耀20调试Android程序 通过Android studio通过荣耀20调试Android程序,要考虑三方面的因素: ·····手机····· ·····windo ...

  6. Android Studio安装常见问题详解——Android Emulator Hypervisor Driver for AMD Processors installation failed.

    目录 一.问题描述 二.解决方案 2.1 开启CPU虚拟化 2.2 禁用Hyper-V 2.3 使用管理员命令行在驱动程序包中执行"silent_install.bat" 一.问题 ...

  7. android studio可以反编译吗,android studio反编译教程

    android studio反编译教程 [2021-02-13 15:05:33]  简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace(& ...

  8. 如何在没有 USB 数据线的情况下使用 Android Studio 在手机中安装 Android

    背景 如何在没有 USB 数据线的情况下使用 Android Studio 在手机中安装 Android 应用程序? 运行调式一个Android项目,写下必要的代码后,接下来的任务是在模拟器或手机上运 ...

  9. android studio最新教程pdf下载,android studio教程pdf下

    android studio教程pdf下 [2021-02-13 15:00:57]  简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace( ...

最新文章

  1. 常考题 | IoU 计算
  2. matlab 全员极大型Topsis评价代码
  3. c语言如何判断密码不同字符,C语言从文本文档读取字符串(用户名和密码验证)...
  4. (3) 百度2011研发工程师笔试卷
  5. LwIP应用开发笔记之二:LwIP无操作系统UDP服务器
  6. CPU纯软件半虚拟化技术
  7. Kerberos的工作原理
  8. Linux进程管理工具
  9. 【手势识别】基于matlab PCA+LDA手语检测识别【含Matlab源码 1551期】
  10. Unity --- 射线检测
  11. linux文件权限651,Linux基础之文件权限详解
  12. 《重构》笔记---坏代码的味道与处理
  13. 《阴阳师·4蟾蜍》原作:梦枕貘
  14. 计算机考研408的算法题详解
  15. 小米手机显示流量数据连接到服务器,小米手机流量总不稳定,这三项设置可能你会用到...
  16. 基于django+mysql的教师教学质量评价系统源代码,教学评价系统源码
  17. Vue props用法详解
  18. Java集成AWS的SES服务
  19. 有什么软件可以裁剪html文件,有什么软件可以裁剪视频?要手机版的
  20. 看过《非你莫属》那期,因为刘俐俐,说说陈鸥

热门文章

  1. 网上报名照片怎么修改大小及在线处理工具的使用教程 ~
  2. 【ArcGIS Pro微课1000例】0022:基于DEM进行流域分析生成流域图
  3. python3版本800行的代码_Python number.long_to_bytes方法代码示例
  4. 开源 java CMS - FreeCMS2.6 自定义表单
  5. 51单片机摇摇棒改字原理详解
  6. 电力系统嵌入式设备测试工具
  7. centos6无法识别因特尔I210网卡
  8. 字体“XX”不支持样式“Regular”。
  9. 满天繁星下度过一个愉快的夜晚
  10. matlab 三维线性插值,MATLAB三维插值与拟合