sql >> Databasteknik >  >> RDS >> PostgreSQL

Uppdatering mellan 2 databaser med dblink fungerar inte

Lägg till tabell-/kolumnalias och (mest troligt) ett WHERE-villkor som detta:

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;

Om du antar typen text . Anpassa dig till din faktiska typ.
Och inget komma i anslutningssträngen .
Jag länkar inte a till b sedan a returnerar en enda rad här.



  1. felaktig dödande av mysqld - startar inte nu

  2. EXPLAIN och COUNT returnerar två olika värden

  3. Hur man väljer värden från JSON i mysql

  4. Beställt antal på varandra följande upprepningar / dubbletter