ecpg

Nom

ecpg -- préprocesseur SQL C embarqué

Synopsis

ecpg [option...] fichier...

Description

ecpg est le préprocesseurs embarqué SQL pour les programmes C. Il convertit des programmes C avec des instructions SQL embarquées en du code C normal en remplaçant les appels au SQL avec les appels spéciaux de fonctions. Les fichiers en sortie peuvent être traités avec tout ensemble d'outils de compilation C.

ecpg convertira chaque fichier donné en entrée sur la ligne de commande dans le fichier C correspondant. Les fichiers en entrées auront de préférence l'extension .pgc, auquel cas l'extension sera remplacée par .c pour déterminer le nom de fichier en sortie. Si l'extension du fichier en entrée n'est pas .pgc, alors le nom de fichier en sortie est calculé en ajoutant .c au nom complet du fichier. Le nom de fichier en sortie peut aussi être surchargé en utilisant l'option -o.

Cette page de référence ne décrit pas le langage SQL embarqué. Voir Chapitre 30 pour plus d'informations sur ce thème.

Options

ecpg accepte les arguments suivants en ligne de commande :

-c

Génère automatiquement certain code C à partir de code SQL. Actuellement, ceci fonctionne pour EXEC SQL TYPE.

-C mode

Initialise un mode de compatibilité. mode pourrait être soit INFORMIX soit INFORMIX_SE.

-D symbol

Définit un symbole C préprocesseur.

-i

Analyse aussi les fichiers d'en-tête du système.

-I répertoire

Spécifie un chemin d'inclusion supplémentaire, utilisé pour trouver les fichiers inclus via EXEC SQL INCLUDE. Par défaut, il s'agit de . (répertoire actuel), /usr/local/include, le répertoire d'en-tête de PostgreSQL et qui a été défini au moment de la compilation (par défaut : /usr/local/pgsql/include) puis /usr/include dans cet ordre.

-o filename

Spécifie que ecpg devrait écrire toute sa sortie dans le fichier spécifié.

-r option

Sélectionne un comportement en exécution. En même temps, option peut seulement valoir no_indicator.

-t

Active la validation automatique (autocommit) des transactions. Dans ce mode, chaque commande SQL est validée automatiquement sauf s'il est à l'intérieur d'un bloc de transaction explicite. Dans le mode par défaut, les commandes sont validées seulement lorsque EXEC SQL COMMIT est exécutée.

-v

Affiche des informations supplémentaires incluant la version et le chemin des en-têtes.

--help

Affiche un bref résumé de l'utilisation de la commande mais saisissez exit.

--version

Affiche l'information sur la version puis quitte.

Notes

Lors de la compilation de fichiers de code C prétraités, le compilateur a besoin d'être capable de trouver les fichiers d'en-tête ECPG dans le répertoire des en-têtes de PostgreSQL. Du coup, vous pourriez devoir utiliser l'option -I lors de l'appel du compilateur (c'est-à-dire -I/usr/local/pgsql/include).

Les programmes utilisant le code C avec du SQL embarqué doivent être lié avec la bibliothèque libecpg, par exemple en utilisant les options de l'éditeur de liens -L/usr/local/pgsql/lib -lecpg.

La valeur d'un de ces répertoires, appropriée parmi ces répertoires, ce qui est appropriée si l'installation est trouvable en utilisant pg_config.

Exemples

si vous avez un fichier source en SQL C embarqué nommé prog1.pgc, vous pouvez créer un programme exécutable en utilisant la séquence suivant de commandes :

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