Heim >Datenbank >MySQL-Tutorial >Wie kann ich datenbankübergreifende Abfragen in PostgreSQL durchführen?
Aktivieren datenbankübergreifender Abfragen in PostgreSQL
Während PostgreSQL auf den ersten Blick datenbankübergreifende Abfragen einzuschränken scheint, gibt es eine praktische Lösung. Das postgres_fdw
-Modul (Foreign Data Wrapper) bietet die notwendige Funktionalität, um eine Verbindung zu verschiedenen PostgreSQL-Datenbanken herzustellen und diese abzufragen, unabhängig von deren Standort (lokal oder remote).
Wichtige Überlegung: Bevor Sie datenbankübergreifende Abfragen auf einem einzelnen Computer implementieren, sollten Sie sich mit der Verwendung von Schemata vertraut machen. Schemas bieten einen einfacheren Ansatz für die Abfrage verschiedener Datensätze, ohne dass eine zusätzliche Konfiguration erforderlich ist.
postgres_fdw
Kompatibilität:
Das Modul postgres_fdw
ist mit den PostgreSQL-Versionen 9.3 und höher kompatibel. Für Versionen vor 9.3 bietet die Funktion dblink
eine vergleichbare Lösung.
Implementierungsschritte:
Um postgres_fdw
für datenbankübergreifende Abfragen zu nutzen:
<code class="language-sql">CREATE FOREIGN DATA WRAPPER postgres_fdw OPTIONS ( host 'hostname', port '5432', -- Standard PostgreSQL port dbname 'target_database' );</code>
<code class="language-sql">CREATE SERVER target_server FOREIGN DATA WRAPPER postgres_fdw OPTIONS ( user 'username', password 'password' );</code>
<code class="language-sql">CREATE USER MAPPING FOR current_user SERVER target_server OPTIONS ( user 'target_user', password 'target_password' );</code>
<code class="language-sql">IMPORT FOREIGN SCHEMA all FROM SERVER target_server INTO schema_name;</code>
<code class="language-sql">SELECT * FROM schema_name.target_table;</code>
Das obige ist der detaillierte Inhalt vonWie kann ich datenbankübergreifende Abfragen in PostgreSQL durchführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!