2013-07-17 3 views
0

У меня возникли проблемы с открытием базы данных. Я могу заставить БД открывать и закрывать и захватывать данные, которые мне нужны в классе макета, и подталкивать их к пользовательскому интерфейсу. Но я также хочу открыть БД в фоновом режиме и прочитать данные (не в то же время, что и пользовательский интерфейс). У меня возникают проблемы, делая это и получить ошибку в вспомогательный класс я звоню класс вроде этого:Ошибки базы данных при открытии

GenerateFiringData GenData=new GenerateFiringData(); //Generate the firing data 

и это класс

import android.app.Activity; 
    import android.database.Cursor; 
    import android.util.Log; 


    public class GenerateFiringData extends Activity{ 
DBAdapter myDb1; 

public GenerateFiringData(){ 
    openDB(); //open database 
    ..... 

} 

private void openDB() { 
    myDb1 = new DBAdapter(this); 
    myDb1.open();// <<<<<<<<<<problem starts here 
} 

private void closeDB() { 
    myDb1.close(); 
} 
    } 

Когда «myDb1.open()» код называется отправляется на адрес

// Open the database connection. 
public DBAdapter open() { 
    db = myDBHelper.getWritableDatabase();<<<---------errors here 
    return this; 
} 

Что я делаю неправильно ??? код базы данных для пользовательского интерфейса части моего проекта идет Ть этого штраф и я не могу понять, почему

Благодаря Snow

+0

Вы инициализировали свою базу данныхHelper myDBHelper? – Opiatefuchs

+0

Это называется «myDb1 = новый DBAdapter (this);» public DBAdapter (Context ctx) { \t this.context = ctx; \t myDBHelper = new DatabaseHelper (контекст); это то, что вы имеете в виду ... Я немного зеленый рожок на этом Android-устройстве – Snowie

ответ

0

Нашел работу вокруг Зова класса как намерение, как похоже на открытие нового макета , Теперь уверен, что это «Правильный способ», но он работает

Смежные вопросы