亲 你不是知道问题所在了吗 ?  只可以 使用  insert into t2 ( a1,b1,c1.... )select   a1,b1,c1....  from t2  ;a1,b1,c1....  为 t2表字段,不包含 自增主键。

解决方案 »

  1.   


    我知道它为什么错了,我的问题是在客户端(Navicat for mysql)中执行的时候,为什么不返回错误,只是返回前面已经成功的查询结果。最重要的是我现在是用C API执行该存储过程的时候,调用mysql_stmt_execute时,也不返回错误。
      

  2.   

    有没有捕获异常 ? 另外你确定  “ insert into t2 select * from t2;” SQL脚本被执行了 ?
      

  3.   


    mysql_stmt_execute不会报错,但是当我取到最后一个结果集的时候,会报错。
    可是对我来说,这错误太延迟了。我想在mysql_stmt_execute的时候就知道sql语句是否有错误。
    不知道是不是有参数可以设置?
      

  4.   

    那就需要调整执行顺序,否则没有办法处理,在开始执行SQL脚本时 只分析是否存在语法错误,其他无法分析并给出相应的错误提示信息 。