當我有值的SQLite數據庫是這樣的:無效數據查詢的Android SQLite數據庫
_id, airportcode, lat, lan
1, AUS, 31.0672, 97.8289
...
當我打開SQLiteDatabase瀏覽器數據庫,並執行:
SELECT DISTINCT _id, airportcode, lat, lon FROM latlon WHERE airportcode="AUS"
它返回:
1, AUS, 31.0672, 97.8289
在我的Android應用程序中,我有這個:
public LatLonResult getLatLonFor(String airportCode){
Cursor mCursor = myDataBase.query(
true, DB_TABLE,
new String[] {KEY_ID, KEY_AIRPORTCODE, KEY_LAT, KEY_LON},
String.format("%s=\"%s\"", KEY_AIRPORTCODE, airportCode),
null, null, null, null, null);
LatLonResult result = null;
if (mCursor != null) {
mCursor.moveToFirst();
result = new LatLonResult();
result.setAirportCode(mCursor.getString(
mCursor.getColumnIndexOrThrow(KEY_AIRPORTCODE)));
result.setLat(mCursor.getDouble(
mCursor.getColumnIndexOrThrow(KEY_LAT)));
result.setLat(mCursor.getDouble(
mCursor.getColumnIndexOrThrow(KEY_LON)));
}
return result;
}
LatLonResult只是getters/setters。
然而,當我運行上面的代碼,因此具有以下值:
result.getAirportCode: AUS
result.getLat: 97.67
result.getLon: null
緯度有錯誤的值,經度爲空。
我在這裏做什麼顯然不對?如果不是,我可以提供哪些其他信息?
我是個白癡。謝謝! – ConditionRacer