pgtcl has no coresponding function to PQcmdTuples

From: Artur Trzewik <mail(at)xdobry(dot)de>
To: pgsql-interfaces(at)postgresql(dot)org
Subject: pgtcl has no coresponding function to PQcmdTuples
Date: 2002-11-23 15:44:59
Message-ID: 200211231642.58326.artur2@xdobry.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-interfaces

Hi!

I have noticed that
pg_result $handle -numTuples
result always 0 after DELETE and UPDATE command

I have taken a look in the source code of pgtcl
and I see

# file pgtclCmds.c

else if (strcmp(opt, "-numTuples") == 0)
{
sprintf(interp->result, "%d", PQntuples(result));
return TCL_OK;
}

it works only for SELECT commands.
There are no coresponding c-function call to PQcmdTuples
that return what I need in this moment.
I suggest to add new subcommand to pg_result -cmdTuples with
new code

else if (strcmp(opt, "-cmdTuples") == 0)
{
sprintf(interp->result, "%d", PQcmdTuples(result));
return TCL_OK;
}

(better were to use Tcl_GetIndexFromObj an not strcmp,
sprintf(interp->result,...) is also unsafe and very historical
It should be Tcl_SetObjResult(interp, Tcl_NewIntObj(PQcmdTuples(result)));
It do not look good

By the way.
pgtcl uses very old tcl interface (up to version 7)
using new interface would increase speed about 30-40%.
It also do not carry about UTF in new Tcl (new means about 2 years).
It hurts me to see that old tcl interfaces slow up tcl (and another say it is
slow).

I can upgrade it (I have done it for mysqltcl) if there are need for it.
I need conntact to pgtcl maintainer/autor.

best regards,
Artur Trzewik

Responses

Browse pgsql-interfaces by date

  From Date Subject
Next Message Prasanna Phadke 2002-11-25 06:45:42 Difference in the actual and extracted values of timestamp
Previous Message Jason E. Stewart 2002-11-23 10:01:43 Re: DBD::Pg timings