Android Studio中sqlite的使用
//AData.java package com.example.newjzb;public class AData {private int id;private String typesz;//支出收入private float money;//金额private String type;//类型private String beizhu;//备注private int year;private int month;private int day;public AData(){}public AData(int id,String typesz,float money,String type,String beizhu,int year,int month,int day){this.id=id;this.typesz=typesz;this.money=money;this.type=type;this.beizhu=beizhu;this.year=year;this.month=month;this.day=day;}public void setId(int id) {this.id = id;}public int getId() {return id;}public void setTypesz(String typesz) {this.typesz = typesz;}public String getTypesz() {return typesz;}public void setMoney(float money) {this.money = money;}public float getMoney() {return money;}public void setType(String type) {this.type = type;}public String getType() {return type;}public void setBeizhu(String beizhu) {this.beizhu = beizhu;}public String getBeizhu() {return beizhu;}public void setYear(int year) {this.year = year;}public int getYear() {return year;}public void setMonth(int month) {this.month = month;}public int getMonth() {return month;}public void setDay(int day) {this.day = day;}public int getDay() {return day;}}
//ADataBase
package com.example.newjzb;import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper;import java.util.ArrayList; import java.util.List;public class ADataBase extends SQLiteOpenHelper {private static final String DB_NAME = "mySQLite.db";private static final String TABLE_NAME = "AJZB";public ADataBase(Context context){super(context,DB_NAME,null,1);}//数据库第一次创建时调用该方法@Overridepublic void onCreate(SQLiteDatabase db) {String sql="create table " + TABLE_NAME + "(Aid integer primary key autoincrement," +"Atypesz text not null,"+"Amoney float not null," +"Atype text not null," +"Abeizhu text ," +"Ayear integer not null," +"Amonth integer not null," +"Aday integer not null);";db.execSQL(sql);}//数据库版本号更新时调用@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {}//增加public long addData(AData aData){SQLiteDatabase db =this.getWritableDatabase();ContentValues values=new ContentValues();values.put("Atypesz",aData.getTypesz());values.put("Amoney",aData.getMoney());values.put("Atype",aData.getType());values.put("Abeizhu",aData.getBeizhu());values.put("Ayear",aData.getYear());values.put("Amonth",aData.getMonth());values.put("Aday",aData.getDay());return db.insert(TABLE_NAME,null,values);}//每日public List<AData> dayData(int year,int month,int day){SQLiteDatabase db=getWritableDatabase();List<AData>ADataList=new ArrayList<>();String sql = "select * from "+TABLE_NAME+" where Ayear=? and Amonth=? and Aday=? order by Aid desc";Cursor cursor = db.rawQuery(sql, new String[]{year + "", month + "", day + ""});if(cursor!=null){while (cursor.moveToNext()){ // int id=cursor.getInt(cursor.getColumnIndexOrThrow("Aid"));int id=cursor.getInt(0);String typesz=cursor.getString(1);float money=cursor.getFloat(2);String type=cursor.getString(3);String beizhu=cursor.getString(4);AData aData=new AData(id,typesz,money,type,beizhu,year,month,day);ADataList.add(aData);}cursor.close();}db.close();return ADataList;}//所有账单public List<AData> allData() {SQLiteDatabase db = getWritableDatabase();List<AData> ADataList = new ArrayList<>();String sql = "select * from "+TABLE_NAME+" order by Aid desc";Cursor cursor = db.rawQuery(sql,null);//Cursor cursor = db.query(TABLE_NAME, null, null, null, null, null, null);if (cursor != null) {while (cursor.moveToNext()) {int id=cursor.getInt(0);String typesz=cursor.getString(1);float money=cursor.getFloat(2);String type=cursor.getString(3);String beizhu=cursor.getString(4);int year=cursor.getInt(5);int month=cursor.getInt(6);int day=cursor.getInt(7);AData aData=new AData(id,typesz,money,type,beizhu,year,month,day);ADataList.add(aData);}cursor.close();}db.close();return ADataList;}//删除数据public void deleteData(int id){SQLiteDatabase db =getWritableDatabase();db.delete(TABLE_NAME,"Aid=?", new String[]{id+""});db.close();}//每月 // public List<AData> day_typesz(int year,int month){ // SQLiteDatabase db=getWritableDatabase(); // List<AData>ADataList=new ArrayList<>(); // String sql = "select * from "+TABLE_NAME+" where Ayear=? and Amonth=? order by Aid desc"; // Cursor cursor = db.rawQuery(sql, new String[]{year + "", month + ""}); // if(cursor!=null){ // while (cursor.moveToNext()){int id=cursor.getInt(cursor.getColumnIndexOrThrow("Aid")); // int id=cursor.getInt(0); // String typesz=cursor.getString(1); // float money=cursor.getFloat(2); // String type=cursor.getString(3); // String beizhu=cursor.getString(4); // int day=cursor.getInt(7); // AData aData=new AData(id,typesz,money,type,beizhu,year,month,day); // ADataList.add(aData); // } // cursor.close(); // } // db.close(); // return ADataList; // }//每日和(支出/收入)public float daySumtypesz(int year,int month,int day,String typesz){SQLiteDatabase db=getWritableDatabase();float sum=0;String sql = "select sum(Amoney) from "+TABLE_NAME+" where Ayear=? and Amonth=? and Aday=? and Atypesz=?";Cursor cursor = db.rawQuery(sql, new String[]{year + "", month + "",day + "", typesz + ""});if(cursor!=null){while (cursor.moveToNext()){ //float money = cursor.getFloat(cursor.getColumnIndex("sum(Amoney)"));sum = money;}cursor.close();}db.close();return sum;}//每月和public float Monthtypesz(int year,int month,String typesz){SQLiteDatabase db=getWritableDatabase();float sum=0;String sql = "select sum(Amoney) from "+TABLE_NAME+" where Ayear=? and Amonth=? and Atypesz=?";Cursor cursor = db.rawQuery(sql, new String[]{year + "", month + "", typesz + ""});if(cursor!=null){while (cursor.moveToNext()){float money = cursor.getFloat(cursor.getColumnIndex("sum(Amoney)"));sum = money;}cursor.close();}db.close();return sum;}}
Android Studio中sqlite的使用相关推荐
- android studio建数据库表,在android studio中创建表
错误:android.database.sqlite.SQLiteException:表用户没有列名(代码1):编译时:INSERT INTO用户名(名称,余额,密码,年龄)VALUES(? ?,?, ...
- Android Studio查看SQLite数据库方法大全
本文目录 方法1:Stetho Android Studio 中添加代码 Chrome浏览器中调试 方法2:SQLite Expert Professional 第一步:导出模拟器数据库文件 第二步: ...
- Android Studio中通过SQLiteDatabase类操作数据库
SQLite是一款轻型的数据库,主要用在嵌入式系统,它占用的资源非常低.SQLite不依赖第三方软件,也不需要安装.数据库中的信息都包含在一个文件中,这个文件可以自由地复制到其它目录或其它机器上. 在 ...
- Android Studio中的手机通讯录开发
Android Studio中的手机通讯录,包含功能(按首字母排序,动态添加) 第一次写博客,也刚踏入工作,想着把自己在项目中遇到的问题,以及自己在工作中所做的项目记录下来,方便以后自己查找知识,一开 ...
- android studio字符串转整型,Android Studio 中的FindBugs插件使用,轻松帮你发现Bug (转)...
在日常开发过程中难免会因为一时疏忽而留下一些Bug,这些Bug就是埋在程序里的定时炸弹,如果不能及时铲除就会导致程序的不稳定,异常或闪退的现象,从而导致用户的体验的下降.那么怎么才能找出这些埋在程序里 ...
- 导入eclipse工程到Android Studio中
ref: 从 Eclipse 迁移至 Android Studio | Android Studio https://developer.android.com/studio/intro/migrat ...
- 获取Android studio 中的模拟器的界面的点的坐标(Ubuntu)
实现的方法是使用Android studio 中的hierarchyviewer 来获取. 启动模拟器 emulator 打开命令行的终端 输入 hierarchyviewer 点击 inspect ...
- android studio数据库存储数据,如何使用API 23在android studio中的数据库中存储数据?...
大多数时候我不会发布任何内容,因为我可以在其他帖子中找到我需要的所有内容,但是现在我已经有几天了,您如何在数据库中存储任何内容?这是我的Java代码如何使用API 23在android studi ...
- Android如何使用so文件和Android studio中导入so
Android中使用so文件: 做一个PDF阅读的功能,找到一个开源的库,mupdf.下载的是网上编译好的so库,导入到自己项目中的时候一直报错Java.lang.UnsatisfiedLinkErr ...
最新文章
- cocos creator怎么隐藏组件(setVisible)
- 持续集成工具Jenkins看这篇就够啦!
- php滚动窗口多条动态,详解原生JS是实现控制多个滚动条同步跟随滚动
- 你的工作单位也需善待
- php 的超全局数组,PHP超全局数组(Superglobals)介绍
- Exchange使用正常的恢复无法恢复的问题
- 进入心理死角--程序员不是技术,是心理 +我是菜鸟。
- XML解析模型(完整版)
- SPSS P小于0.05,结果真的有效吗?【SPSS 070期】
- 【调度问题】基于遗传算法求解公交排班系统matlab源码
- 【概率论】极大似然估计和最大后验估计
- html5考试总结300字,期中考试总结300字大全
- 计算机学报英语,修改稿要求-计算机学报.PDF
- 【刷题记录14】Java工程师丨腾讯面试真题(2)
- win10如何关机时显示停止服务器,Win10系统关机时总提示此应用程序阻止关机如何解决...
- qq音乐html5测试性格,根据你的听歌习惯测试你的性格
- Redis key前缀的设计与使用
- 阿里Apsara Clouder专项技能认证:实现调用API接口——笔记
- JMeter参数化post请求
- 计算机pe启动蓝屏怎么办,U盘重装系统进入PE蓝屏怎么办
热门文章
- day22 二叉树| 235,701,450
- 加锁和解锁-ReentrantLock详解-AQS-并发编程(Java)
- u盘启动linux出现grub,通过U盘为Ubuntu更新GRUB恢复系统引导的教程
- [C语言]之反省自己
- 家庭网络WIFI相关知识
- 我给自己做了一个导航网站
- MySQL数据库(三)eclipse软件中使用JDBC连接数据库
- ANSYS apdl命令流瞬态动力学分析案例5--------凸轮从动件运动分析
- poi word 添加内容时 光标向下迭代生成新的段落
- 云服务器自动断开连接的解决办法