Re: pgsql embedded again!
| От | Haller Christoph |
|---|---|
| Тема | Re: pgsql embedded again! |
| Дата | |
| Msg-id | 200110231210.OAA29557@rodos обсуждение исходный текст |
| Ответ на | pgsql embedded again! (Esteban Gutierrez Abarzua <esgutier@sauce.chillan.ubiobio.cl>) |
| Список | pgsql-sql |
Hi Esteban,
Your problem looks familiar to me,
and it seems you did not follow my advice.
Anyway, here is a C sample program which works.
It has nothing to do with wrong types, but with a
missing connection, but see for yourself.
/*
/opt/pgsql/bin/ecpg -o sampleprog01.c sampleprog01.sql
the compile command is for HP-UX - you have to adapt it for your machine
cc -Aa +w1 -g -I/opt/pgsql/include/ -L/opt/pgsql/lib/ sampleprog01.c -Wl,-a,archive -lecpg -lpq -o sampleprog01
*/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include "libpq-fe.h"
exec sql include sqlca;
void main()
{
EXEC SQL BEGIN DECLARE SECTION; char *dbName; VARCHAR tabla[50];
EXEC SQL END DECLARE SECTION; int nrows;
dbName = "template1";
EXEC SQL CONNECT TO :dbName ;
printf("sqlca.sqlcode = %d \n", sqlca.sqlcode) ;
EXEC SQL BEGIN ;
EXEC SQL DECLARE T99 CURSOR FOR select relname from pg_class ;
EXEC SQL OPEN T99; for(nrows = 0;; nrows++) { EXEC SQL FETCH IN T99 INTO :tabla; if (
sqlca.sqlcode!= 0 ) break; printf("%.*s \n", tabla.len, tabla.arr ); } printf("nrows = %d ;
sqlca.sqlcode= %d \n", nrows, sqlca.sqlcode) ; EXEC SQL CLOSE T99;
EXEC SQL END ;
EXEC SQL DISCONNECT ;
}
В списке pgsql-sql по дате отправления: