夜雨聆风学习资料网

ARTICLE · 1324083

第四章 为PostgreSQL写插件

第四章 为PostgreSQL写插件

刚给 PostgreSQL 写了个 C++ 插件,装好就能直接 select pg_cpp_add(10, 32),返回 330。

核心思路就一条:C++ 写好逻辑,编译成静态库;再用 C 写一层包装接进 PG。目录里放源码、静态库和配置文件,结构很清楚。

坑全在接口和异常这两处。C++ 函数得包进 extern "C",避免名字被编译器 mangling。调用时用 try/catch 包住,把 C++ 异常转成 PG 的 ereport(ERROR),别让异常漏进 PG。

构建也不复杂。先编静态库,再编整个插件。关键在 Makefile:PG_CXXFLAGS 开 C++17,SHLIB_LINK 链接静态库和 -lstdc++,最后 make install 装好。

装完进 psql 建扩展就能用了。说白了,PG 扩展不是非得纯 C,C++ 照样能接进去。

原文第四章 为PostgreSQL写插件
作者提示: 个人观点,仅供参考
广东,34分钟前,

回首页,搜索你想要的文档

在首页搜索框输入关键词,快速定位资料

文库首页搜索指引 立即搜索

相关学习资料