dblink_get_pkey — devuelve las posiciones y nombres de los campos de la clave primaria de una relación
dblink_get_pkey(text relname) returns setof dblink_pkey_results
dblink_get_pkey proporciona información sobre la clave
primaria de una relación en la base de datos local. Esto es a veces útil
para generar consultas que se enviarán a bases de datos remotas.
relname
Nombre de una relación local, por ejemplo foo o
myschema.mytab. Incluye comillas dobles si el
nombre mezcla mayúsculas y minúsculas o contiene caracteres especiales, por
ejemplo "FooBar"; sin comillas, la cadena
se convertirá a minúsculas.
Devuelve una fila por cada campo de la clave primaria, o ninguna fila si la relación no tiene clave primaria. El tipo de fila de resultado se define como
CREATE TYPE dblink_pkey_results AS (position int, colname text);
La columna position simplemente va de 1 a N;
es el número del campo dentro de la clave primaria, no el número
dentro de las columnas de la tabla.
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)