2012-03-18 7 views
1

こんにちはすべての助けに感謝します! は、私は私のデータベーステーブル内の3つのフィールド整数配列を返すSQLiteクエリデータ

public static final String colExpID = "ExpenseID";  
public static final String colExpExpense = "ExpenseDisc"; 
public static final String colExpAmount = "Amount"; 

データ

public Integer[] queryHouse() { 
     // TODO Auto-generated method stub 
     String[] columns = new String[]{colExpID,colExpExpense,colExpAmount}; 
     Integer[] Result = new Integer[]{};  
     Cursor c = ourDatabase.query(ExpenseTable, columns, null, null, null, null, null); 
     int iExpense = c.getColumnIndex(colExpExpense); 
     int iAmount = c.getColumnIndex(colExpAmount); 
     for(int i = 0; i < c.getCount();i++){ 
      if(c.getString(iExpense) == "House"){ 
      Result[i] = Integer.parseInt(c.getString(iAmount)); 
      } 
     } 
     return Result; 
    } 

を照会する私の方法私は私はあなたに感謝欠けているかわからないんだけどを持っています!

+1

あなたはそれはあなたが達成しようとしている、とあなたはそれで失敗しているかが何であるかを指定していないので、私は、またあなたが欠落しているかわからないんだけど。 – SWeko

答えて

3

文字列と==を比較していますが、これは正しくありません。 equals使用:

if(c.getString(iExpense).equals("House")) 
    . 
    . 
    . 
+0

公共ボイドのonCreate(SQLiteDatabaseデシベル){ \t \t \t // TODO自動生成方法スタブ \t \t \t db.execSQL( "テーブルを作成" + IncomeTable + "(" +たcolid + "整数PRIMARY KEY AUTOINCREMENT、" + colIncome + "money);");\t \t \t db.execSQL( "create table" + ExpenseTable + "(" + colExpID + "整数のPRIMARY KEY AUTOINCREMENT、" + colExpExpense + "text、" + colExpAmount + "money);"); \t \t \t \t \t} – user996502

0
public void onCreate(SQLiteDatabase db) { 
      // TODO Auto-generated method stub 
      db.execSQL("create table " + IncomeTable + " (" + colID + " Integer PRIMARY KEY AUTOINCREMENT, " + colIncome + " money);"); 
      db.execSQL("create table " + ExpenseTable + " (" + colExpID + " Integer PRIMARY KEY AUTOINCREMENT, " + colExpExpense + " text, " + colExpAmount + " money);"); 

     } 
関連する問題