android sqlite操作(2)

news/2024/7/3 0:52:02

以下只是我个人的浅见,大神请忽略~

这一篇说一下sqlite的相关操作,其实安卓提供了相当多的操作sqlite的方法,这里我介绍下我常用的方法。

(1)创建一个数据库文件,这个很简单

1 File dbPathFile = new File(dbPath);
2 if(!dbPathFile.exists())
3     try {
4         dbPathFile.createNewFile();
5     } catch (Exception e) {} 

(2)连接数据库

1 SQLiteDatabase sd = SQLiteDatabase.openOrCreateDatabase(dbPath,null);

(3)创建数据表

1 sd.execSQL("CREATE TABLE IF NOT EXISTS testdb(_id integer primary key not null,msg varchar(50));");

(4)插入数据

1 ContentValues cValue = new ContentValues();   
2 cValue.put("msg",msg);
3 sd.insert("testdb",null,cValue);

(5)删除数据等操作都可以使用sd.execSQL

1 sd.execSQL("delete from testdb where _id=(select max(_id) from testdb);");
2 sd.execSQL("delete from testdb;");

(6)当然最重要的是读数据库

 1 public ArrayList<HashMap<String, Object>> GetMessage()
 2 {   
 3     ArrayList<HashMap<String, Object>> data = new ArrayList<HashMap<String, Object>>();
 4     HashMap<String, Object> hm;
 5     Cursor cursor = sd.query("testdb",null,null,null,null,null,"_id desc"); 
 6     while(cursor.moveToNext()){
 7         hm = new HashMap<String, Object>();
 8         hm.put("msg",cursor.getString(1));
 9         data.add(hm);
10     }
11     return data;
12 }

sd.query("testdb",null,null,null,null,null,"_id desc"); 

这一句就是读取是数据,第一个参数是表名,之后的是用于分组和排序之类...

真正使用的时候可以将上面的方法封装起来使用,我自己封装的一个仅供参考,点击下面的链接下载。

看代码嫌烦,点这:Sqlite_demo.zip

转载于:https://www.cnblogs.com/miku-xiaoyu/p/4692305.html


http://lihuaxi.xjx100.cn/news/246281.html

相关文章

C++关键字const与constexpr

1. const 1.1. 修饰一般常量 一般常量是指简单类型的常量。这种常量在定义时&#xff0c;修饰符const可以用在类型说明符前&#xff0c;也可以用在类型说明符后。 例如&#xff1a; int const x 2; const int y 2; const std::string& name "csdn"; 1.2…

RNN,LSTM,GRU简单图解:

一篇经典的讲解RNN的&#xff0c;大部分网络图都来源于此&#xff1a;http://colah.github.io/posts/2015-08-Understanding-LSTMs/ 每一层每一时刻的输入输出&#xff1a;https://www.cnblogs.com/lovychen/p/9368390.html 带有权重标识的图&#xff1a;

javascript里面RegExp的exec函数的总结

2019独角兽企业重金招聘Python工程师标准>>> 在我们的前端里面&#xff0c;经常会用到正则表达式进行检索字符串&#xff0c;刚好javascript里面提供RegExp来支持正则表达式&#xff0c;而RegExp对象的主要方法是exec()。 语法 RegExpObject.exec(string) 参数 描述…

详解zabbix中文版安装部署

一、zabbix简介&#xff08;摘自百度百科&#xff09;zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix能监视各种网络参数&#xff0c;保证服务器系统的安全运营&#xff1b;并提供柔软的通知机制以让系统管理员快速定位/解决存在…

C++关键字register

这个关键字请求编译器尽可能的将变量存在CPU内部寄存器中&#xff0c;而不是通过内存寻址访问&#xff0c;以提高效率。注意是尽可能&#xff0c;不是绝对。你想想&#xff0c;一个CPU 的寄存器也就那么几个或几十个&#xff0c;你要是定义了很多很多register 变量&#xff0c;…

P4269 [USACO18FEB]Snow Boots G

思维题。 以地板为序构造链表&#xff0c;再排序&#xff0c;然后删除走不过去的地面。 删除的时候顺便维护最大的跨度&#xff0c;以此判断可行性。 总的来说利用了答案的单调性。 #include <cstdio> #include <cstring> #include <iostream> #include <…

怎样将jpg转换成pdf软件

为什么80%的码农都做不了架构师&#xff1f;>>> 怎样将jpg转换成pdf软件 序言&#xff1a; 企业或个人通常会遇到设备终端软件的兼容性和支持性问题&#xff0c;比如&#xff0c;JPG转PDF文本&#xff0c;这给等于给用户设置了一个门槛&#xff0c;遇到需要将JPG转换…

安装Macports遇到的问题和PATH设置

2019独角兽企业重金招聘Python工程师标准>>> 安装Macports后&#xff0c;再输入port&#xff0c;发现无法使用。 然后下源码来编译&#xff0c;发现要设置PATH。咋设置呢&#xff0c;网上找的攻略看下面。 缺省的Macports安装在了/opt/local/bin下头。 执行&#xf…