阅读(4602) (13)

PostgreSQL dblink_get_pkey

2021-08-24 15:39:59 更新

dblink_get_pkey — 返回一个关系的主键域的位置和域名称

大纲

dblink_get_pkey(text relname) 返回 dblink_pkey_results 集合

描述

dblink_get_pkey提供有关于本地数据库中一个关系的主键的信息。这有时候有助于生成要被发送到远程数据库的查询。

参数

relname

一个本地关系的名称,例如foo或者myschema.mytab。如果该名称是大小写混合的或包含特殊字符,要包括双引号,例如"FooBar";如果没有引号,字符串将被折叠到小写形式。

返回值

为每一个主键域返回一行,如果该关系没有主键则不返回行。结果行类型被定义为:

CREATE TYPE dblink_pkey_results AS (position int, colname text);

position列值可以从 1 到 N,它是该域在主键中的编号,而不是在表列中的编号。

例子

CREATE TABLE foobar (
    f1 int,
    f2 int,
    f3 int,
    PRIMARY KEY (f1, f2, f3)
);
CREATE TABLE

SELECT * FROM dblink_get_pkey('foobar');
 position | colname
----------+---------
        1 | f1
        2 | f2
        3 | f3
(3 rows)