dblink_get_pkey
dblink_get_pkey — возвращает позиции и имена полей первичного ключа отношения
Синтаксис
dblink_get_pkey(text relname) returns setof 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)