to_regclass()

将关系名称转换为 OID 的函数

to_regclass() 是一个系统函数,用于将关系的名称转换为其OID

to_regclass()PostgreSQL 9.4 中添加。

用法

to_regclass ( text ) → regclass

to_regclass() 等效于使用 regclass 对象标识符类型 转换,但如果找不到匹配的关系,则返回 NULL 而不是引发 ERROR

在评估提供的关系名称时,会考虑当前搜索路径。

变更历史

示例

to_regclass() 的基本用法示例

postgres=# SELECT to_regclass('foo'), to_regclass('foo')::oid;
 to_regclass | to_regclass 
-------------+-------------
 foo         |       16392
(1 row)

如果指定的关系不存在或未找到,则返回 NULL

postgres=# SELECT to_regclass('bar') IS NULL;
 ?column? 
----------
 t
(1 row)

如果在当前搜索路径中看不到指定的关系,则必须对其进行模式限定

postgres=# SET search_path TO '';
SET

postgres=# SELECT to_regclass('foo'), to_regclass('public.foo');
 to_regclass | to_regclass 
-------------+-------------
             | public.foo
(1 row)

分类

系统函数

另请参阅

regclass, to_regnamespace()

反馈

提交任何关于 "to_regclass()" 的评论、建议或更正 此处