求解:mysql中写入经纬度信息的存储过程以及调用

tk514 2012-04-09 07:49:42
我想让用户在网页中输入经纬度信息和地点的名字,然后调用mysql的存储过程,将经纬度信息以及该信息点的名称存入mysql中。但经纬度信息存入数据库后是个空值,请高手给看看,万分感谢。

数据表:yinhang
字段:id(int),name(varchar(255)),kind(varchar(255)),the_geom(geometry)

存储过程代码如下
DELIMITER $$

CREATE
PROCEDURE `yinhang`.`xin`(in idhao int,in ming varchar(255),in jing real,in wei real)
BEGIN
INSERT INTO yinhang VALUES (idhao,ming,'A191',geometryfromtext('point(jing wei)'));
END$$

DELIMITER ;

网页端调用的代码:
conn.execute("call (1330,'测试',117.3,36)")
...全文
240 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
tk514 2012-04-09
  • 打赏
  • 举报
回复
我解决了。
INSERT INTO yinhang VALUES (idhao,ming,'A191',geometryfromtext('point(jing wei)'));
这个语句中的'point(jing wei)'
把jing 和 wei做成了字符串来处理了,没有把值传递过去,在这句之前,使用concat()函数先把字符串与参数连接成字符串就可以了。
tk514 2012-04-09
  • 打赏
  • 举报
回复
补充:
网页端调用的代码应为:
conn.execute("call xin(1330,'测试',117.3,36)")
tk514 2012-04-09
  • 打赏
  • 举报
回复
坐等答案

56,687

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧