PostgreSQL - Embutindo comandos SQL no seu código C

Existe uma alternativa ao uso de bibliotecas para acesso ao PostgreSQL, que é a inclusão de comandos SQL dentro do próprio código em C. Veremos neste artigo como fazer esta integração.

[ Hits: 74.080 ]

Por: Poleto em 01/06/2006


Compilando os programas



A única diferença da compilação de um programa que tenha código SQL embutido para outros programas escritos em C é que o pré-processador do PostgreSQL deve ser chamado antes do gcc.

Para compilar nosso programa acima, usamos o comando:

$ ecpg exemplo.pgc

Mais simples que isso, impossível. O ECPG vai gerar um arquivo de mesmo nome, porém com a extensão ".c". Iremos compilar este arquivo com o gcc da seguinte forma:

$ gcc -o exemplo exemplo.c -lecpg

A opção -o especifica o nome do arquivo executável que será gerado, no nosso caso, exemplo.

O parâmetro exemplo.c é o arquivo contendo o código-fonte, que foi gerado previamente pelo ECPG.

A opção -lecpg diz ao compilador para usar a biblioteca do ECPG. Esta opção não pode ser esquecida, do contrário, você vai ver muitos erros de compilação e pode perder horas até conseguir se dar conta de que esqueceu esta opção.

Após este passo, temos um arquivo executável pronto para ser rodado.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Criando o ambiente de testes
   3. Iniciando com o ECPG
   4. Conectando com o servidor de banco de dados
   5. Compilando os programas
   6. Inserindo, atualizando e apagando dados de tabelas
   7. Retornando dados de tabelas
   8. Considerações Finais
Outros artigos deste autor

Instalando o CMS Drupal 4.7

Acessando PostgreSQL com C

Acessando PostgreSQL com C - Cursores

Leitura recomendada

Usando MySQL na linguagem C

Acessando PostgreSQL com C

Ensaio acerca de bibliotecas de código aberto para abstração de acesso a banco de dados em linguagem C++

Embutindo um banco de dados SQLite em sua aplicação C++

Acessando PostgreSQL com C - Cursores

  
Comentários
[1] Comentário enviado por marcolinux em 07/06/2006 - 17:11h

Parece que foi DEUS que mandou vc postar este artigo!

Estou justamente sofrendo aqui usando a libpq !


Parabéns pelo material.

MARCOLINUX

[2] Comentário enviado por faustojacome em 10/03/2008 - 23:43h

Apos quebrar muito a cabeca para funcionar no Debian com o PostgreSQL e o ecpg via apt-get aqui vai a forma que consegui compilar.

gcc -g -I/usr/include/postgresql/ -o saida postgreSQL.c -L/usr/lib/postgresql/8.3/lib/ -lecpg -lpq

[3] Comentário enviado por benwin em 28/10/2009 - 07:28h

Porque eu não posso usar variáveis no campo FROM?

EXEC SQL SELECT usuario, senha INTO :varusuario, :varsenha FROM :tabelabd WHERE usuario = :meunumerodb;

Existe alguma forma de burlar isso?

Abraço!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts