jsonb_populate_record_valid()

一个用于测试 jsonb_populate_record() 的函数

jsonb_populate_record_valid() 是一个用于测试 jsonb_populate_record() 的系统函数。

jsonb_populate_record_valid()PostgreSQL 17 中添加。

用法

jsonb_populate_record_valid ( base anyelement, from_json json ) → boolean

如果提供的 json 值是有效输入,则返回 true,否则返回 false

变更历史

示例

jsonb_populate_record_valid() 的基本用法示例

postgres=# CREATE TYPE jsonb_test AS (val CHAR(3));
CREATE TYPE

postgres=# SELECT jsonb_populate_record_valid(
    NULL::jsonb_test,
    '{"val": "foobar"}'
);
 jsonb_populate_record_valid 
-----------------------------
 f
(1 row)

这里提供的 ("foobar") 的值超过了 jsonb_test 类型的长度,因此返回 false。如果向 jsonb_populate_record() 提供相同的参数,将引发 ERROR

postgres=# SELECT jsonb_populate_record(
    NULL::jsonb_test,
    '{"val": "foobar"}'
);
ERROR:  value too long for type character(3)

分类

JSON, 系统函数

另请参阅

jsonb_populate_record(). json_populate_record()

反馈

提交有关“jsonb_populate_record_valid()”的任何评论、建议或更正,请在此处 提交