The version I used:
mysql++: 3.0.6
mysql: 5.0.67
OS: windows2003 and windowsXP
2008/12/16 weidong shen <leaphigher@stripped>
> Hi Warren Young:
>
> Below is a simple example I wrote. The problem is that the memory will
> increase all the time when executing "mysqlpp::sql_int id = obRow[0]". But
> the memory will be stable when only executing this instruction "cout <<
> obRow[0]".
>
> Would you please help me find out the reason? Thanks you in advance!
>
> int main(int argc, char *argv[])
> {
> // Get connection parameters from command line
> const char* db = "testdb", *server = "192.168.1.5", *user = "root",
> *pass = "111111";
>
> try {
> Connection con;
> con.set_option(new MultiStatementsOption(true));
> if (!con.connect(db, server, user, pass)) {
> return 1;
> }
>
> while (1) {
> Query query = con.query();
> query << "SELECT COUNT(*) FROM dp_npc;";
> StoreQueryResult res = query.store();
> mysqlpp::Row &obRow = res[0];
>
> cout << obRow[0]; // the memory is
> statble.
> mysqlpp::sql_int id = obRow[0]; // the memory will be
> increasing all the time when to execute this instruction.
>
> for (int i = 1; query.more_results(); ++i) {
> res = query.store_next();
> }
> Sleep(10);
> }
>
> // ....
> }
>