我最近把我的數據庫從MySQL切換到PostGres。我也使用GeoKit。當我開始使用已經播種的新數據庫時,出現以下錯誤:Rails:從MySQL轉換到PostGres會打破Geokit距離計算?
PGError: ERROR: function radians(character varying) does not exist
LINE 1: ...COS(0.661045389762993)*COS(-2.12957994527573)*COS(RADIANS(ti...
^
HINT: No function matches the given name and argument types. You might
need to add explicit type casts.
任何人都知道爲什麼現在這樣打破?我知道GeoKit仍然有效,因爲它仍然在數據庫播種時在每張票據的模型中執行地理編碼,但它不會正確計算距離。
實際上,小數點不起作用,它需要是浮點數。小數僅支持整數(例如:lat,long爲-32,117),其中浮點數支持實數(例如:lat,long爲-32.553,117.2342)。 – sizzle 2011-07-15 08:14:47
在我的應用程序Szielenski中使用小數很好。 lat和lng完全保留實數。 – 2012-01-26 12:17:13