hnayyc 发表于 2009-06-28 14:36

mysql_send_query ()错误是什么原因造成的?

我在写一个程序,其中用到对mysql的操作。操作很简单,就是把缓冲区的节点当成数据库的记录插入数据库。但是用gdb跟踪调试时,总是到了mysql_query ()这句时程序中断。
并且会输出mysql_send_query () from /usr/lib/mysql/libmysqlclient.so.15这样的信息。我在网上查了,mysql_query()是基于mysql_send_query()开发的。而且好像和
数据库连接有关。但是我的程序是根据以前的程序修改而成的。以前的程序运行时是没问题的。

谁能告诉我这是错在哪了吗?或者可能出现的错误原因。多谢。这个问题已经有3天了,还没解决。

hnayyc 发表于 2009-06-28 19:07

问题已经解决,就是连接的问题。自己回个贴,算是结贴了。

qq576709166 发表于 2011-12-30 11:02

执行由“query”指向的SQL查询,它应是字符串长度字节“long”。正常情况下,字符串必须包含1条SQL语句,而且不应为语句添加终结分号(‘;’)或“\g”。如果允许多语句执行,字符串可包含由分号隔开的多条语句。对于包含二进制数据的查询,必须使用mysql_real_query()而不是mysql_query(),这是因为,二进制数据可能会包含‘\0’字符。此外,mysql_real_query()比mysql_query()快,这是因为它不会在查询字符串上调用strlen()。

Nathan2013 发表于 2013-07-17 10:50

现在是2013年了,我神奇的遇到了跟楼主同样的问题,只是mysql_send_query () from /usr/lib/mysql/libmysqlclient.so.15这句提示后面的15变成了16......楼主,如果你还在这个论坛的话麻烦详细告诉我一下,怎么解决的,我查看mysql_real_connect()返回值是ture,说明连接成功了吧,到底是什么原因啊,我在这个问题上卡了一周了

Nathan2013 发表于 2013-07-17 11:09

回复 1# hnayyc 现在是2013年了,我神奇的遇到了跟楼主同样的问题,只是mysql_send_query () from /usr/lib/mysql/libmysqlclient.so.15这句提示后面的15变成了16......楼主,如果你还在这个论坛的话麻烦详细告诉我一下,怎么解决的,我查看mysql_real_connect()返回值是ture,说明连接成功了吧,到底是什么原因啊,我在这个问题上卡了一周了


   
页: [1]
查看完整版本: mysql_send_query ()错误是什么原因造成的?