O PostgreSQL é um banco de dados extremamente eficiente, que não deixa a desejar se comparado com os grandes bancos de dados comerciais. Neste artigo iremos ver a recuperação de dados através da linguagem C, usando a libpq de uma forma alternativa para a recuperação de dados, com a utilização de cursores.
Criando o ambiente de testes
Primeiramente estamos levando em consideração que o PostgreSQL já está instalado e funcionando. Também presume-se que você tenha algum conhecimento utilizando a libpq, pelo menos como iniciar uma conexão com o banco de dados e como executar comandos.
Para os testes, usaremos aqui o mesmo ambiente criado no artigo
[4] Comentário enviado por rjesus em 13/03/2007 - 11:20h
Olá, sou novo no linux, utilizoo o SUSE versão 10.1, tentei executar o exemplo que foi passado acima e obtive o seguinte resultado :
suse:/usr/include/pgsql # gcc $(pkg-config --libs --cflags gtk+-2.0) -g teste1.c
/tmp/ccc0dzwL.o: In function `main':
/usr/include/pgsql/teste1.c:13: undefined reference to `PQconnectdb'
/usr/include/pgsql/teste1.c:15: undefined reference to `PQstatus'
/usr/include/pgsql/teste1.c:28: undefined reference to `PQexec'
/usr/include/pgsql/teste1.c:21: undefined reference to `PQerrorMessage'
/usr/include/pgsql/teste1.c:22: undefined reference to `PQfinish'
/usr/include/pgsql/teste1.c:36: undefined reference to `PQresultStatus'
/usr/include/pgsql/teste1.c:42: undefined reference to `PQresultErrorMessage'
/usr/include/pgsql/teste1.c:45: undefined reference to `PQcmdTuples'
/usr/include/pgsql/teste1.c:53: undefined reference to `PQclear'
/usr/include/pgsql/teste1.c:59: undefined reference to `PQfinish'
collect2: ld returned 1 exit status
Alguêm poderia me ajudar ???
Obigado!
[5] Comentário enviado por poleto em 13/03/2007 - 15:04h
Fala rjesus,
Parece que você esqueceu alguns parâmetros para o gcc na hora de executar.
Dá uma olhada neste artigo que tem os detalhes necessários para compilar programas com suporte ao PostgreSQL: