2013-06-02 129 views
0

我创建了DBAdapter类负责与数据库建立连接并执行任何查询并最终关闭连接。Sqlite:构造函数未定义

我有它不会从活动类(ReminderBeep)继承了另一个类,但我用我将对DBAdapter这一类。

其实我也不知道我怎么能操纵将对DBAdapter构造进行连接*

的错误是:构造将对DBAdapter(ReminderBeep)是未定义

将对DBAdapter是:

public class DBAdapter { 

    static final String DATABASE_NAME = "MyDB"; 
    static final int DATABASE_VERSION = 2; 
    final Context context; 
    DatabaseHelper DBHelper; 
    SQLiteDatabase db; 

    public DBAdapter(Context ctx) 
    { 
     this.context = ctx; 
     DBHelper = new DatabaseHelper(context); 
    } 
    private static class DatabaseHelper extends SQLiteOpenHelper 
    { 
     DatabaseHelper(Context context) 
     { 
      super(context, DATABASE_NAME, null, DATABASE_VERSION); 
     } 

     @Override 
     public void onCreate(SQLiteDatabase db) 
     {    
     } 

     @Override 
     public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) 
     { 
     } 
    } 

    //---opens the database--- 
    public DBAdapter open() throws SQLException 
    { 
     db = DBHelper.getWritableDatabase(); 
     return this; 
    } 

    //---closes the database--- 
    public void close() 
    { 
     DBHelper.close(); 
    } 
    public void insert(String sql) 
    { 
     db.execSQL(sql);  
    } 
} 

BeepReminder是:

public class ReminderBeep 
{ 
    public void DeleteDailyActivities() 
    { 
     DBAdapter db=new DBAdapter(this); 
     db.open(); 
     String sql="delete from DailyWorks"; 
     db.insert(sql); 
     db.close(); 
    } 
} 

回答

2

ReminderBeep不是extendig Activity。但是将对DBAdapter想要一个上下文作为参数,则

DBAdapter db=new DBAdapter(this); 

thisReminderBeep

+0

是的,我知道,但因为是BeepReminde我不能使用_extends Activity_ – Salman

+0

没有XML文件,应该比你重新考虑你的设计 – Blackbelt

+0

待办事项你有任何想法的构造? – Salman