Я успешно создал таблицу в data/data folder
в Android, но, пытаясь извлечь значения из базы данных, я продолжаю получать null pointer Exception
, как указано в коде. Я проверил database
, но столбцы успешно получают значения из моего приложения. Пожалуйста, помогите.
//some class
//row_idealweight and row_goal are the name of column in the table table_name.
DietpointHelper db;
Cursor c=db.getReadableDatabase().query( db.table_name,new String[]{db.row_idealweight,db.row_goal}, null, null, null, null, null);<---NULL POINTER EXCEPTION
while(c.moveToNext())
{
et_ideal.setText(c.getString(c.getColumnIndex(db.row_idealweight)));
et_goal.setText(c.getString(c.getColumnIndex(db.row_goal))) ;
}
db.close();
//end of class..
public class DietpointHelper extends SQLiteOpenHelper{
/** Called when the activity is first created. */
//creating db
private final static String db_name="Modify_Program";
private final static int vs=1;
//creating columns
final String table_name="Modify_program";
final String row_Primary="_id";
final String row_Weight="col_weight";
final String row_Gender="col_gender";
final String row_Height="col_height";
final String row_Birthday="col_birthdate";
final String row_Current_Weight="col_currentWeight";
final String row_goal="col_goal";
final String row_idealweight="col_idealweight";
//creating statement
String database_create= "CREATE TABLE "+table_name+"("
+row_Primary+" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "
+ row_Weight + " TEXT, "
+row_Gender+" TEXT , "
+row_Height+" TEXT , "
+row_Birthday+" TEXT, "
+row_Current_Weight+" TEXT, "
+row_idealweight+" TEXT, "
+row_goal+" TEXT "+");" ;
public void addData(Record rec)
{
SQLiteDatabase db=this.getReadableDatabase();
ContentValues values=new ContentValues();
values.put(row_Weight,rec.getWeight());
values.put(row_Gender, rec.getCheck());
values.put( row_Height, rec.getHeight());
values.put(row_Birthday, rec.getBday());
values.put(row_Current_Weight, rec.getWeight());
values.put(row_goal,rec.getGoal());
values.put(row_idealweight,rec.getIdealWeight());
values.put(row_Primary,1);
db.insert(table_name,row_Weight, values);
}
public DietpointHelper(Context context)
{
super(context, db_name, null,vs);
// TODO Auto-generated constructor stub
}
public void onCreate(SQLiteDatabase database)
{
database .execSQL(database_create);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)
{
// TODO Auto-generated method stub
db.execSQL("DROP TABLE IF EXISTS " +table_name );
onCreate(db);
}
}//class