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); }