Fügen Sie Tabellen-/Spaltenaliase und (höchstwahrscheinlich) eine WHERE-Bedingung wie diese hinzu:
UPDATE tb1 b
SET name = a.pname -- maybe you want to update *pname* instead?
FROM (
SELECT *
FROM dblink('port=5432 dbname=db1 user=postgres password=12345'
, 'SELECT pname FROM ta1 WHERE pid = 1')
AS t(pname text)
) a
WHERE b.pid = 1;
Angenommen, geben Sie text
ein . Passen Sie sich Ihrem tatsächlichen Typ an.
Und kein Komma in der Verbindungszeichenfolge
.
Ich verlinke a nicht mit b
seit a
gibt hier eine einzelne Zeile zurück.