ECPG

用于在C语言代码中嵌入SQL语句的预处理器包

ECPG(“PostgreSQL的嵌入式C”)是一个预处理器包,它允许将SQL语句嵌入到C(或可能的C++代码)中(尽管C++支持不完整)。

ECPGPostgreSQL 6.3 中被添加,尽管它似乎是基于之前为 Postgres95 提供的代码。 ECPG 包含在PostgreSQL基础发行版中。

用法

ECPG 的使用方法是创建一个扩展名非“.c”的源文件 - 通常使用“.pgc”。运行 ecpg 在此源文件上将创建一个具有“.c”扩展名的源文件,然后可以像往常一样进行编译 - 记住要包含“-l ecpg”标志。

ECPG 还有一个“Informix兼容模式”,当激活时,它会尝试表现得像 Informix E/SQL 的 Informix 预编译器。然而,兼容性是有限的,ECPG 不能作为直接替换编译器来将 Informix 代码移植到 PostgreSQL。

变更历史

进行中

示例

最小ECPG“Hello World”代码示例

#include  <stdio.h>

EXEC SQL BEGIN DECLARE SECTION;
    char output[1024];
EXEC SQL END DECLARE SECTION;

int
main()
{
    EXEC SQL CONNECT TO testdb AS con1 USER testuser;

    EXEC SQL SELECT 'hello world' INTO :output;
    printf("%s\n", output);

    EXEC SQL DISCONNECT ALL;
    return 0;
}

分类

应用程序接口

反馈

提交任何关于“ECPG”的评论、建议或更正,请在此处 进行