我想写个存储过程,把现在的每个表都插入已有的数据到一定数目,做测试用的,本想用游标读取information_schema库的tables表循环插入,可是需要用预处理,游标里又不能用预处理,请问我该怎么写

解决方案 »

  1.   

    不用游标吧  用个while循环就行
      

  2.   


    预处理里边做mysql_stmt_fetch就相当于游标的FETCH,怎么不能做呢? 基本的结构就这样:/*   初始化sql语句   */
    .../*   游标查询   */
    mysql_stmt_execute;/*    保存查询结果集至本地   */
    mysql_stmt_store_result;while循环
        /*   逐条获取记录  */
        mysql_stmt_fetch;    /*    将数据拷入绑定结构体  */
        ......    /*    插入另外一个表  */
        mysql_execute;    /*    提交  */
        mysql_commit;/*   释放查询结果集  */
    mysql_stmt_free_result;
      

  3.   

    更正:
     /*    插入另外一个表  */
        mysql_stmt_execute;
      

  4.   

    如果仅是准备测试数据,则建议在EXCEL中准备好数据,然后直接LOAD
      

  5.   

    二百多张表,每张表要数百万条数据,在excel里怎么弄