2017-05-30 136 views
-2

我想從sqlite的數據獲取usermail當我選擇的用戶名我想這碼得到錯誤如何獲取電子郵件地址作爲用戶名每

 android.database.sqlite.SQLiteException: no such column: royal (code 1): , while compiling: SELECT userName, compMail FROM Records WHERE userName= royal 

DBController.java

public String returnickname(long l) { 
     // TODO Auto-generated method stub 
     String[] coloumns = new String[] { COLUMN_NAME, COLUMN_TYPE,COLUMN_COMP_MAIL };//calling elements in an array 
     Cursor c = db.query(DATABASE_NAME, coloumns,COLUMN_NAME + "=" + l, null, null, null, null); 
     if (c != null) { 
      c.moveToFirst(); 
      String nickname = c.getString(2); // since name is in position 2 ie 3rd coloumn 
      return nickname; 
     } 
     return null; 
    } 

VehicleReceipt.java

if (spinner.getId()== R.id.insu_comp_spinner) { 

      String label = parent.getItemAtPosition(position).toString(); 


      long l=Long.parseLong(label); 
      String returnedname=controller.returnickname(l); 
      editICM.setText(returnedname); 

我想通過微調選擇

來提取數據

例如:select contact_no where name ='ram';

當我選擇ram set rams contact_no來編輯文本。

+0

您還沒有表現出正確的代碼;一個'long'變量不能有'royal'的值。 –

回答

0

當您發佈的例外說:

android.database.sqlite.SQLiteException:沒有這樣的列:皇家(代碼1)

如果你把你的查詢String值沒有引號,數據庫將假定它是一個列名。

你編譯的查詢是:

SELECT userName, compMail FROM Records WHERE userName=royal 

這應該是:

SELECT userName, compMail FROM Records WHERE userName='royal' 

包裹值引號'。試着改變你的查詢:

Cursor c = db.query(DATABASE_NAME, coloumns,COLUMN_NAME + "='" + l + "'", null, null, null, null); 

這將使你的方法是這樣的:

public String returnickname(long l) { 
    // TODO Auto-generated method stub 
    String[] coloumns = new String[] { COLUMN_NAME, COLUMN_TYPE,COLUMN_COMP_MAIL };//calling elements in an array 
    Cursor c = db.query(DATABASE_NAME, coloumns,COLUMN_NAME + "='" + l + "'", null, null, null, null); 
    if (c != null) { 
     c.moveToFirst(); 
     String nickname = c.getString(2); // since name is in position 2 ie 3rd coloumn 
     return nickname; 
    } 
    return null; 
} 

你可以閱讀有關的SQLite查詢的基礎知識在這裏:SQLite SELECT Query

+0

你是否想糾正它。 ? bcz我無法得到它 –

+0

對不起,你的意思是?你想讓我詳細說明嗎? –

+0

他張貼完整的代碼,以解決您的問題.... – Denny

相關問題