package com.tonycube.demo;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
import java.security.spec.ECField;
public class DBHelper extends SQLiteOpenHelper {
private final static String DATABASE_NAME = "demo.db";
private final static int DATABASE_VERSION = 1;
private final String TABLE_NAME_XIAOSHI = "XIAOSHI";
public DBHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
final String INIT_TABLE1 = "CREATE TABLE " + TABLE_NAME_XIAOSHI + " (" +
"date" + " char(10) PRIMARY KEY , " +
"year" + " INTEGER, " +
"month" + " INTEGER, " +
"xiaoshi" + " INTEGER );";
try {
db.execSQL(INIT_TABLE1);
} catch (Exception e) {
Log.e("111", "get insert ss11111111 ");
}
}
public void insertXiaoshi(SQLiteDatabase db, int year, int month, int day, int xiaoshi) {
ContentValues values = new ContentValues();
values.put("year", year);
values.put("month", month);
values.put("date", Integer.toString(year) + "-" + Integer.toString(month) + "-" + Integer.toString(day));
values.put("xiaoshi", xiaoshi);
db.insert(TABLE_NAME_XIAOSHI, null, values);
}
public int getCurrentXiaoshi(SQLiteDatabase db, int year, int month, int day) {
Cursor cursor = db.query(TABLE_NAME_XIAOSHI, new String[]{"xiaoshi", "date", "year", "month",}, "date=?", new String[]{Integer.toString(year) + "-" + Integer.toString(month) + "-" + Integer.toString(day)}, null, null, null);
try {
cursor.moveToFirst();
return cursor.getInt(cursor.getColumnIndex("xiaoshi"));
} catch (Exception e) {
return -1;
}
}
public void updateCurrentXiaoshi(SQLiteDatabase db, int year, int month, int day, int xiaoshi) {
ContentValues values = new ContentValues();
values.put("xiaoshi", xiaoshi);
db.update(TABLE_NAME_XIAOSHI, values, "date=?", new String[]{Integer.toString(year) + "-" + Integer.toString(month) + "-" + Integer.toString(day)});
}
public void insertOrUpdateCurrentXiaoshi(SQLiteDatabase db, int year, int month, int day, int xiaoshi) {
if (getCurrentXiaoshi(db, year, month, day) != -1) {
updateCurrentXiaoshi(db, year, month, day, xiaoshi);
return;
}
insertXiaoshi(db, year, month, day, xiaoshi);
}
public int getCurrentMonthXiaosh(SQLiteDatabase db, int year, int month) {
Cursor cursor = db.query(TABLE_NAME_XIAOSHI, new String[]{"xiaoshi"}, "year=? and month=?", new String[]{Integer.toString(year), Integer.toString(month)}, null, null, null);
int sumXiaoshi = 0;
try {
while (cursor.moveToNext()) {
sumXiaoshi += cursor.getInt(cursor.getColumnIndex("xiaoshi"));
}
return sumXiaoshi;
} catch (Exception e) {
return 0;
}
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// final String DROP_TABLE = "DROP TABLE IF EXISTS " + TABLE_NAME;
// db.execSQL(DROP_TABLE);
// onCreate(db);
}
}
protected void onDestroy() {
super.onDestroy();
closeDatabase();
}
public void onCreate(Bundle savedInstanceState){
openDatabase();
}
private void openDatabase(){
dbhelper = new DBHelper(this);
}
private void closeDatabase(){
dbhelper.close();