ecpg

Nome

ecpg -- pré-processador da linguagem SQL incorporada para a linguagem C

Sinopse

ecpg [opção...] arquivo...

Descrição

O utilitário ecpg é o pré-processador da linguagem SQL incorporada (embedded) para programas escritos na linguagem C. Converte programas C com declarações SQL incorporadas em código C normal, substituindo as chamadas ao SQL por chamadas a funções especiais. Os arquivos de saída podem, então, ser processados por qualquer cadeia de ferramentas do compilador C.

O ecpg converte cada arquivo de entrada especificado na linha de comando, no arquivo de saída C correspondente. De preferência, os arquivos de entrada devem possuir a extensão .pgc e, neste caso, a extensão é substituída por .c para determinar o nome do arquivo de saída. Se a extensão do arquivo de entrada não for .pgc, então o nome do arquivo de saída será gerado anexando .c ao nome completo do arquivo de entrada. O nome do arquivo de saída pode ser especificado por meio da opção -o.

Esta página de referência não descreve a linguagem SQL incorporada. Consulte o Capítulo 30 para obter mais informações sobre este tópico.

Opções

O ecpg aceita os seguintes argumentos de linha de comando:

-c
Gera, automaticamente, certos códigos C a partir do código SQL. Atualmente funciona para EXEC SQL TYPE.
-C modo
Define o modo de compatibilidade. O modo pode ser INFORMIX ou INFORMIX_SE.
-D símbolo
Define um símbolo do pré-processador C.
-i
Analisa, também, os arquivos de inclusão do sistema.
-I diretório
Especifica um caminho de inclusão adicional, utilizado para encontrar arquivos incluídos por meio de EXEC SQL INCLUDE. Por padrão os seguintes diretórios: . (o diretório corrente), /usr/local/include, o diretório de inclusão do PostgreSQL definido em tempo de compilação (por padrão /usr/local/pgsql/include) e /usr/include, nesta ordem.
-o arquivo_de_saída
Especifica que o ecpg deve escrever toda a sua saída no arquivo_de_saída especificado.
-r opção
Seleciona um comportamento em tempo de execução. Atualmente opção pode ser apenas no_indicator.
-t
Ativa a auto-efetivação (auto-commit) das transações. Neste modo, cada comando SQL é automaticamente efetivado, a não ser que esteja dentro de um bloco de transação explícito. No modo padrão, os comandos são efetivados somente quando é emitido EXEC SQL COMMIT.
-v
Mostra informações adicionais, incluindo a versão e o caminho de inclusão.
--help
Mostra um breve resumo da utilização e depois termina.
--version
Mostra a informação da versão e depois termina.

Observações

Ao compilar arquivos com o código C pré-processado, o compilador necessita encontrar os arquivos de cabeçalho do ECPG no diretório de inclusão do PostgreSQL. Portanto, é necessário usar a opção -I ao chamar o compilador (por exemplo, -I/usr/local/pgsql/include).

Os programas escritos em C com comandos SQL incorporados necessitam da biblioteca libecpg para a ligação. Pode ser usado, por exemplo, as opções do ligador -L/usr/local/pgsql/lib -lecpg.

Os nomes destes diretórios, apropriados para a instalação, podem ser descobertos utilizando a aplicação pg_config .

Exemplos

Havendo um arquivo fonte C chamado prog1.pgc, com comandos SQL incorporados, pode ser criado um programa executável utilizando a seguinte seqüência de comandos:

ecpg prog1.pgc
cc -I/usr/local/pgsql/include -c prog1.c
cc -o prog1 prog1.o -L/usr/local/pgsql/lib -lecpg

SourceForge.net Logo