В чем проблема, что мой БД нулевой?
там написано Cursor cursor = myDb.getData(select * from Donation_Details); myDb : null
и выскакивает ошибка ниже.
А вот ошибка выполнения говорит
Вот DatabaseHelper
, который Когда я назначаю и объявляю базу данных.
private static final String DATABASE_NAME = "eBossCharity.db";
private static final int DATABASE_VERSION = 1;
public dbOpenHelper(Context context){
super(context,DATABASE_NAME,null,DATABASE_VERSION);
}
Вот dbAccess
, когда я хочу получить данные из базы данных.
public dbOpenHelper openHelper;
public SQLiteDatabase db;
private static dbAccess instance;
public dbAccess(Context context) {
this.openHelper = new dbOpenHelper(context);
}
public static dbAccess getInstance(Context context) {
if (instance == null) {
instance = new dbAccess(context);
}
return instance;
}
public Cursor getData(String sql) {
db = openHelper.getReadableDatabase();
return db.rawQuery("", null);
}
Вот Summary page
, когда я хочу показать данные в виде списка для настройки. Я ставлю точку останова в строке 13 и отлаживаю ее. Там написано, что моя база данных пуста. Я вызвал dbAccess
метод getData
и захватил базу данных "Donation_details". Он должен показывать данные ...
ListView listView;
ArrayList<Model> mList;
RecordListAdapter mAdapter = null;
dbAccess myDb;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_summary__page);
this.listView = findViewById(R.id.listView);
mList = new ArrayList<>();
mAdapter = new RecordListAdapter(this,R.layout.row,mList);
listView.setAdapter(mAdapter);
Cursor cursor = myDb.getData("Select * from Donation_Details");
mList.clear();
while(cursor.moveToNext()){
int id = cursor.getInt(0);
String txnno = cursor.getString(1);
String name = cursor.getString(2);
String txndate = cursor.getString(3);
BigDecimal amount = BigDecimal.valueOf(cursor.getDouble(4));
String description1 = cursor.getString(5);
String createddate = cursor.getString(7);
mList.add(new Model(id,txnno,name,txndate,amount,description1,createddate));
}
Я думаю, что кое-что пропустил здесь и там. Но я не смог найти его, или, может быть, я что-то неправильно набрал, чтобы база данных была нулевой? Могу ли я получить руководство? Заранее благодарен ...