谷歌地图商店定位器的MySQL错误

时间:2012-08-23 12:19:21

标签: mysql

使用mysql时遇到一些问题。我的环境是wamp,当我尝试从xml文件中提取一些数据时出现了问题。这是错误。

查询无效:您的SQL语法出错;检查与MySQL服务器版本对应的手册,以便在')附近使用正确的语法。* cos(弧度(lat))* cos(弧度(lng) - 弧度())+ sin(弧度()'在第1行

我正在尝试使用Google地图商店定位器here is the link to the course。我得说我前几天运行程序很好,但今天它破了。怪异。

顺便说一句,将.csv文件导入我的mysql时也会出错,这会导致错误键的值。它有关系吗?

任何人都可以帮助我吗? THX!

1 个答案:

答案 0 :(得分:0)

您输入的SQL查询无效。您可能忘记填写参数,这会使解析器翻转。

您给我们的

The page显示了此查询:

SELECT id, 
  ( 3959 * acos( cos( radians(37) ) * cos( radians( lat ) ) 
  * cos( radians( lng ) - radians(-122) ) 
  + sin( radians(37) ) * sin( radians( lat ) ) ) ) AS distance 
FROM markers 
HAVING distance < 25 
ORDER BY distance LIMIT 0 , 20;

您使用的是什么查询?你有什么东西替换37吗?如果您忽略37,查询将失败并显示您所描述的错误:

SELECT id, 
  ( 3959 * acos( cos( radians() ) * cos( radians( lat ) ) 
  * cos( radians( lng ) - radians(-122) ) 
  + sin( radians(37) ) * sin( radians( lat ) ) ) ) AS distance 
FROM markers 
HAVING distance < 25 
ORDER BY distance LIMIT 0 , 20;

因为MySQL正在调用radians function并期待一个参数。