I'm new to android and want to design database for my android application but i'm not able to do that. I have done everything to find the error but couldn't locate any error and still not able to create database. Please someone help me in this, thanks in advance.
The code is below:
Model Class:
package com.example.health;
public class Daily {
private int _id;
private String _tips;
public Daily(){
}
public Daily(int id, String tips){
this._id=id;
this._tips=tips;
}
public Daily(String tips){
this._tips=tips;
}
public void setID(int id) {
this._id = id;
}
public void setTips(String tips){
this._tips=tips;
}
public int getID() {
return this._id;
}
public String getTips(){
return this._tips;
}
}
Database Handler:
package com.example.health;
import java.util.ArrayList;
import java.util.List;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
public class MyDBHandler extends SQLiteOpenHelper {
private static final int DATABASE_VERSION = 1;
private static final String DATABASE_NAME = "healthDB.db";
private static final String TABLE_DAILY = "daily";
public static final String COLUMN_ID = "_id";
public static final String COLUMN_TIPS = "tips";
public MyDBHandler(Context context, String name,
CursorFactory factory, int version) {
super(context, DATABASE_NAME, factory, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
String CREATE_DAILY_TABLE = "CREATE TABLE " + TABLE_DAILY + "(" + COLUMN_ID + " INTEGER PRIMARY KEY," + COLUMN_TIPS + " TEXT " + ")";
db.execSQL(CREATE_DAILY_TABLE);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS " + TABLE_DAILY);
onCreate(db);
}
public void addDaily(Daily daily) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(COLUMN_TIPS, daily.getTips());
db.insert(TABLE_DAILY, null, values);
db.close();
}
public List<Daily> getAllDailys(){
List <Daily> dailyList=new ArrayList<Daily>();
// Select All Query
String selectQuery="SELECT * FROM " + TABLE_DAILY;
SQLiteDatabase db=this.getReadableDatabase();
Cursor c=db.rawQuery(selectQuery, null);
// looping through all rows and adding to the list
if(c.moveToFirst()){
do{
Daily daily=new Daily();
daily.setID(Integer.parseInt(c.getString(0)));
daily.setTips(c.getString(1));
// Adding user to the list
dailyList.add(daily);
}while(c.moveToNext());
}
c.close();
return dailyList;
}}