//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); } //数据库第一次创建时调用该方法 @Override public 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); } //数据库版本号更新时调用 @Override public 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; } }