2011-04-18 43 views
2

我想在點擊一個按鈕listactivity創建一個數據庫..但我得到一個錯誤不能創建在活動目錄數據庫

的方法 openOrCreateDatabase(字符串,整數, 空)未定義爲新的類型 View.OnClickListener(){}「和 」DefaultDBHelper無法解析。

有沒有辦法做到這一點在listactivity?請幫忙 !!!

我的代碼:

reset.setOnClickListener(new OnClickListener() 
{ 
    private int count; 
    @Override public void onClick(View v) 
    { 
     SQLiteDatabase myDB = this.openOrCreateDatabase(MY_DATABASE_NAME, SQLiteDatabase.OPEN_READWRITE, null); 
     try 
     { 
      /* Create the Database (no Errors if it already exists) */ 
      // myDB = dbHelper.getWritableDatabase(); 
      // dbHelper.onCreate(myDB); 
      myDB.execSQL("CREATE TABLE IF NOT EXISTS " 
         + DefaultDBHelper.MY_DATABASE_TABLE 
         + " (LastName VARCHAR, FirstName VARCHAR," 
         + " Country VARCHAR, Age INT(3));"); 

      myDB.execSQL("INSERT INTO " 
         + DefaultDBHelper.MY_DATABASE_TABLE 
         + " (LastName, FirstName, Country, Age)" 
         + " VALUES ('name', 'title', 'country', 20);"); 
     } 
     catch (SQLiteException e) { 
     } 
     finally { 
     if (myDB != null) 
      myDB.close(); 
     } 
    } 
}); 

回答

4

你剛剛改變這樣

SQLiteDatabase myDB = getBaseContext().openOrCreateDatabase(MY_DATABASE_NAME, SQLiteDatabase.OPEN_READWRITE, null); 

我認爲它的代碼將幫助ü

+0

感謝4烏拉圭回合的關注.. – sayantan 2011-04-18 08:49:31

0
reset.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 
       SQLiteDatabase myDB =openOrCreateDatabase("DB_NAME", MODE_WORLD_WRITEABLE ,null); 



      } 
     }); 

將下面的代碼幹活已經測試它'這個'是指的OnClickListener對象,喲ü創造了there.That是造成編譯error.Taking了「」就能解決問題

+0

很大,它的工作完美,我學到了新的東西太...非常感謝 – sayantan 2011-04-18 08:52:54

+0

找時間接受您認爲正確的答案之一。 – rogerstone 2011-04-18 09:11:49