我试图在MySQL中存储经度和纬度信息。我使用Ruby来解析经纬度数据。它们被分别解析,然后组合成一个字符串变量。所以,如果我有:MySQL对字符串执行数学运算?
latitude = 43.78219.to_s
longitude = -75.00326.to_s
location = latitude + " " + longitude # => "43.78219 -75.00326"
我有MySQL中的表来存储这些数据,并将数据类型设置为字符串VARCHAR。问题是,当我将位置字符串插入到表中时,MySQL执行数学运算并将字符串中的两个数字相减。那我就像Whaaaaaaaaa ??????? 因此,它最终将存储-31.22107作为位置。难道我做错了什么?
这里是我使用
db.query("insert into StationCapacityStatus
(city_id, station_id, location, empty_docks, nonempty_docks, timestamp)
values(
23,
#{$station_number},
#{location},
#{$empty_docks},
#{$nonempty_docks},
#{$datetime}
)"
)
添加您正在使用它保存到查询数据库。如果它不在引号中,那么它有可能将它作为一个等式来提取。 – judda 2012-03-07 03:41:01
反正我会把它们存储在不同的列中。 – pbond 2012-03-07 03:42:21
@judda刚刚添加了我正在使用的查询。 – 2012-03-07 03:48:31