调试中看一下。 query_str 的实际内容是什么。

解决方案 »

  1.   

    query_str单步调试之后为
    insert into(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1000, 1000, '2013-07-07 12:00:00', 1000, 1, '0.0.0.0')
    我把这句话直接放到mysql中执行,添加成功
    在程序中执行,返回为false,但是也插入成功了
    反而是故意将其中改错了(多加了一个括号),返回值为true,添加失败。
    所以我想问mysql_query()的返回值的含义是什么,好像我在c++里面的执行和一般意义上的返回值搞反了
      

  2.   

    insert into expresssucshipmenttable0(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1131826560,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable0(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1650715360,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable14(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1009267102,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable7(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1482635863,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into (shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(2283645654,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable1(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(857585569,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable10(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1014521322,540010002,'2013-07-07 07:00:00',1002,131989513,'10.187.133.174')
    insert into expresssucshipmenttable8(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1464055960,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable11(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(727393163,540010002,'2013-07-07 07:00:00',1002,131989513,'10.187.136.23')
    insert into expresssucshipmenttable10(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(990592170,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable5(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1348658389,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable0(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(812184336,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into (shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(2320572604,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable7(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1634516231,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable9(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(824611081,540010002,'2013-07-07 07:00:00',1002,131989514,'10.187.133.176')
    insert into expresssucshipmenttable9(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1936930009,540010002,'2013-07-07 07:00:00',1002,131989514,'10.187.133.165')
    insert into expresssucshipmenttable12(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(707604076,540010002,'2013-07-07 07:00:00',1002,131989509,'10.187.136.25')
    insert into expresssucshipmenttable12(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(991800412,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable6(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(173519638,540010002,'2013-07-07 07:00:00',1002,131989511,'10.187.133.171')
    insert into expresssucshipmenttable2(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(990087346,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable0(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1131826560,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable0(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1650715360,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable14(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1009267102,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable7(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1482635863,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into (shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(2283645654,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable1(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(857585569,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable10(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1014521322,540010002,'2013-07-07 07:00:00',1002,131989513,'10.187.133.174')
    insert into expresssucshipmenttable8(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1464055960,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable11(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(727393163,540010002,'2013-07-07 07:00:00',1002,131989513,'10.187.136.23')
    insert into expresssucshipmenttable10(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(990592170,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable5(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1348658389,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable0(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(812184336,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into (shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(2320572604,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable7(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1634516231,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable9(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(824611081,540010002,'2013-07-07 07:00:00',1002,131989514,'10.187.133.176')
    insert into expresssucshipmenttable9(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(1936930009,540010002,'2013-07-07 07:00:00',1002,131989514,'10.187.133.165')
    insert into expresssucshipmenttable12(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(707604076,540010002,'2013-07-07 07:00:00',1002,131989509,'10.187.136.25')
    insert into expresssucshipmenttable12(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(991800412,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
    insert into expresssucshipmenttable6(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(173519638,540010002,'2013-07-07 07:00:00',1002,131989511,'10.187.133.171')
    insert into expresssucshipmenttable2(shipmentUin,shipmentID,shipmentTime,shipmentChannel,shipmentQuantity,shipmentIP)values(990087346,113100100,'2013-07-07 07:00:00',131,1,'0.0.0.0')
      

  3.   

    前面20条和后面20条数据一样
    但是mysql_query返回的都是true   插入成功的却只有18条
    ps:我按照第一个字段分了16张表
      

  4.   

    oracle官方
    http://dev.mysql.com/doc/refman/5.1/en/mysql-query.htmlint mysql_query(MYSQL *mysql, const char *stmt_str)
    Zero for success. Nonzero if an error occurred.   
    所以0或false才代表正确,当然false只是代表0而已,所以不要用false了,false很别扭。
    (我也正疑惑呢,查到你的帖子确认了我的猜测就再去查了官网。。)
    为什么CSDN的老鸟们都没发现问题呢???完整的如下
    21.8.7.51. mysql_query()
    int mysql_query(MYSQL *mysql, const char *stmt_str)DescriptionExecutes the SQL statement pointed to by the null-terminated string stmt_str. Normally, the string must consist of a single SQL statement without a terminating semicolon (“;”) or \g. If multiple-statement execution has been enabled, the string can contain several statements separated by semicolons. See Section 21.8.16, “C API Support for Multiple Statement Execution”.mysql_query() cannot be used for statements that contain binary data; you must use mysql_real_query() instead. (Binary data may contain the “\0” character, which mysql_query() interprets as the end of the statement string.)If you want to know whether the statement should return a result set, you can use mysql_field_count() to check for this. See Section 21.8.7.22, “mysql_field_count()”.Return ValuesZero for success. Nonzero if an error occurred.ErrorsCR_COMMANDS_OUT_OF_SYNCCommands were executed in an improper order.CR_SERVER_GONE_ERRORThe MySQL server has gone away.CR_SERVER_LOSTThe connection to the server was lost during the query.CR_UNKNOWN_ERRORAn unknown error occurred.