我有en错误,实际上是代码抛出异常。我不能从sqlite数据库读取数据。当我读取sqlite数据库时抛出异常
这里是我的课whic是数据库
public class Database extends SQLiteOpenHelper{
public SQLiteDatabase db;
public Database(Context c)
{
super(c, c.getDatabasePath("MobileTech.db").toString(), null, 3);
getWritableDatabase().close();
}
@Override
public void onCreate(SQLiteDatabase db)
{
Log.e("x", "MobileTech.db oluşturuluyor");
/**
* Mobil Kullanıcı Tablosu
*/
db.execSQL("CREATE TABLE MOBILEUSERS" +
"(ID TEXT PRIMARY KEY, USERNAME TEXT, PASSWORD TEXT)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
}
而这里的工作是阅读类的mobileusers方法:
//I try to read mobileusers data here
public ArrayList<MobileUsers> getMobileUsers()
{
ArrayList<MobileUsers>userList = new ArrayList<MobileUsers>();
db=getWritableDatabase();
Cursor cursor = db.rawQuery("SELECT USERNAME,PASSWORD FROM MOBILEUSERS", null);
while (cursor.moveToNext())
{
MobileUsers user = new MobileUsers(cursor.getString(0), cursor.getString(1));
userList.add(user);
}
db.close();
return userList;
}
这里是哪里打来的读取数据库的方法的方法数据库类(我发布了)
public ArrayList<MobileUsers> userList()
{
ArrayList<MobileUsers>userList = new ArrayList<MobileUsers>();
Database db = new Database(this.c);
userList = db.getMobileUsers();
for(MobileUsers mobileUser : userList)
{
Log.e("isim", mobileUser.name);
Log.e("şifre", mobileUser.password);
}
return userList;
}
但是我得到了一个异常。这是一个例外。
哪里是我的错?我无法捕捉,我看不到。请问你能帮帮我吗?
请向我们展示完整的堆栈跟踪,并指出它出现在哪条线上。 –
检查此问题http://stackoverflow.com/questions/18189995/android-getwritabledatabase-throws-a-nullpointerexception – Pavan
我已经向您展示了关于异常的所有函数 –