Thread: ordered output under c/libpq

ordered output under c/libpq

From
Ken Plumbly
Date:
Hi,  I queried this a couple of days ago and got an excellent response,
The software works,  the query is sent,  but the printed order
the same order in which the data was entered.  So either my query is
being
chopped at the order by statement, or I'm not printing it correctly.
now,  I wonder if anyone more experienced at bot c and postgres
can see what I am doing wrong here:

(I'm a novice so bear with me:-))

C code:
                           sprintf(query, "select * from %s order by
%s", table, PQfname(result, 0));                           fprintf(cgiOut, "<CENTER>%s</CENTER><BR>\n",
query);                           res = PQexec(conn, query);                           if((!res) || (PGRES_TUPLES_OK
!=
PQresultStatus(res)))                               {                               fprintf(cgiOut, "<BR><CENTER>Error
Sending Query</CENTER><BR><CENTER>Detailed Report: %s</CENTER>\n",                               PQerrorMessage(conn));
                             PQfinish(conn);                               fprintf(cgiOut, "</BODY>\n");
              fprintf(cgiOut, "</HTML>\n");                               exit(1);                               }
 
                                                         for (i = PQntuples(res)-1; i >= 0; i--)
  {                               for(y = 0; y < z; y++)                               {
fprintf(cgiOut,"<TD>%s</TD>\n",
 
PQgetvalue(result, i, y));                               }                           fprintf(cgiOut, "<TR>\n");
                 }                       fprintf(stdout, "</TABLE>\n");                       fprintf(cgiOut,
"</CENTER>\n");                      fprintf(cgiOut, "</BODY>\n");                       fprintf(cgiOut, "</HTML>\n");
                    exit(0);               }
 


Debugging File:

read_pg_options: syslog=2,verbose=2,query=4
debug info:       User         = root       RemoteHost   = localhost       RemotePort   = 0       DatabaseName =
oilfield      Verbose      = 3       Noversion    = f       timings      = f       dates        = Normal       bufsize
   = 64       sortmem      = 512       query echo   = f
 
InitPostgres
StartTransactionCommand
query: select * from companies
ProcessQuery
CommitTransactionCommand
StartTransactionCommand
query: select * from companies order by comp_name
ProcessQuery
CommitTransactionCommand
proc_exit(0) [#0]
shmem_exit(0) [#0]
exit(0)

Am I blind or, just plain tired from too many late nights?  ;-)

Ken
kvp@ocol.com