【问题标题】:Returning a table from a UDF (in C)从 UDF 返回表(在 C 中)
【发布时间】:2010-07-30 20:28:15
【问题描述】:

我正在尝试用 C 语言编写一个 UDF,它将值插入到表中并返回该表。 更大的图景是:我解析一些文档并建立一个“解析表”(本质上这是被解析文档的解析树的关系表示)。在将解析信息插入解析表后,我需要 UDF 返回此“解析表”,因为它需要作为其他运算符的输入。

如果我使用 SPI (SPI_execute),我可以插入数据,但无法通过后续查询(例如 SELECT * from parseTable;)将其读出,因为后续查询的结果取决于之前的查询(至少我是这样理解手册的)。

我非常感谢任何帮助。我有点卡在这里。

非常感谢,

迪特里希

【问题讨论】:

    标签: database postgresql user-defined-functions


    【解决方案1】:

    有几个样本

    1. postgresqlsrc/contrib/tablefunc/tablefunc.c
    2. http://www.pgsql.cz/index.php/Project_of_UDF_and_its_realization_at_C_for_PostgreSQL#Table_functions
    3. 查看 PostgreSQL 的源代码 src/backend/utils/misc/guc.c/show_all_settings(), src/backend/utils/adt/misc.c/pg_get_keywords()

    【讨论】:

      猜你喜欢
      • 2019-03-28
      • 2021-06-17
      • 1970-01-01
      • 2017-05-21
      • 1970-01-01
      • 1970-01-01
      • 2020-12-11
      • 1970-01-01
      • 2014-11-19
      相关资源
      最近更新 更多