bool_plperl

在 bool 和 plperl 之间转换

概览

扩展包名版本分类许可证语言
plperl1.0LANGPostgreSQLC
ID扩展名BinLibLoadCreateTrustReloc模式
3260plperlpg_catalog
3261bool_plperl-
3262hstore_plperl-
3263jsonb_plperl-
相关扩展plperl plperlu bool_plperlu plpgsql pg_tle plv8

版本

PG18PG17PG16PG15PG14
1.01.01.01.01.0

安装

提示:这是 PostgreSQL 内核自带的 contrib 扩展

CREATE EXTENSION bool_plperl;

用法

bool_plperl: bool 与 PL/Perl 之间的类型转换

为 PL/Perl 提供 bool 类型的转换支持。加载后,PostgreSQL 的 boolean 值会自动转换为 Perl 原生布尔表示(而非字符串),反之亦然。

CREATE EXTENSION bool_plperl;

CREATE FUNCTION check_flag(val boolean) RETURNS text
LANGUAGE plperl TRANSFORM FOR TYPE boolean AS $$
  # val  Perl 原生布尔值(1  undef),而非字符串
  if ($_[0]) {
    return "flag is set";
  }
  return "flag is not set";
$$;

SELECT check_flag(true);   -- flag is set
SELECT check_flag(false);  -- flag is not set

最后修改 2026-03-14: update extension metadata (953cbd0)