2011-04-21 79 views
0
c=MyDB.rawQuery("SELECT Distance FROM " + 
      Table1 + "WHERE Source = '" + source + "' AND Distance = " + 
       distance + " ' ", null); 

distance = c.getFloat(c.getColumnIndex("Distance")); 

回答

2
c=MyDB.rawQuery("SELECT Distance FROM " + Table1 + " WHERE Source = '" + source + "' AND Distance = '" + distance + " ' ", null); 

,請注意空間之前距離後WHERE關鍵字, 「'」=。 另外,最好使用不是rawQuery,而是使用查詢方法,因爲它使用prepared statement,這更安全。

+1

仍然有錯誤。距離之前缺少''''。 ;) – Mudassir 2011-04-21 09:46:55

+0

我已經更新了答案,不過謝謝你=) – 2011-04-21 09:47:47

+0

但你有一個報價後的距離。 – 2011-04-21 09:50:21

0

您在距離值之前缺少一個撇號,並且在表名後面有一個空格。

但是,這種構建查詢的方式會使您容易受到SQL注入攻擊。相反,請使用適當的參數。如何做到這一點將記錄在您正在使用的圖書館中。