openGauss/MogDB调用C FUNCTION
环境准备
- 安装 openGauss/MogDB 可参考官方文档
- 服务器环境 本地虚拟机 centos 7.9
注意:尽量进入 omm 用户下进行编译,可以避免一些不必要的环境问题
代码
- C 代码 基本与 postgres 插件开发一样,关键是 4,5,6 三行。
#include "postgres.h"
#include "fmgr.h"
PG_MODULE_MAGIC;
extern "C" Datum add_ab(PG_FUNCTION_ARGS);
PG_FUNCTION_INFO_V1(add_ab);
Datum
add_ab(PG_FUNCTION_ARGS)
{
int32 arg_a = PG_GETARG_INT32(0);
int32 arg_b = PG_GETARG_INT32(1);
PG_RETURN_INT32(arg_a + arg_b);
}