Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Bertanya Merentas Pangkalan Data PostgreSQL yang Berbeza?

Bagaimanakah Saya Boleh Bertanya Merentas Pangkalan Data PostgreSQL yang Berbeza?

Barbara Streisand
Lepaskan: 2025-01-12 07:50:41
asal
745 orang telah melayarinya

How Can I Query Across Different PostgreSQL Databases?

Gunakan PostgreSQL untuk membuat pertanyaan merentas pangkalan data

PostgreSQL sendiri tidak menyokong pertanyaan silang pangkalan data secara asli, seperti yang ditunjukkan oleh mesej ralat, tetapi terdapat beberapa penyelesaian yang tersedia. Salah satu cara ialah menggunakan sambungan postgres_fdw.

postgres_fdw

postgres_fdw (pembungkus data asing) membolehkan anda menyambung ke jadual dalam mana-mana pangkalan data PostgreSQL, tanpa mengira lokasinya. Untuk menggunakan sambungan ini:

  1. Pastikan versi Postgres anda menyokong postgres_fdw (v9.3 atau lebih tinggi disyorkan).

  2. Pasang sambungan postgres_fdw dalam setiap pangkalan data di mana anda ingin melakukan pertanyaan merentas pangkalan data.

  3. Buat pelayan luaran dan pemetaan pengguna:

    <code class="language-sql"> postgres=# CREATE SERVER foreign_server FOREIGN DATA WRAPPER postgres_fdw OPTIONS (host 'remote_host', port '5432');
     postgres=# CREATE USER MAPPING FOR CURRENT_USER SERVER foreign_server OPTIONS (user 'remote_user', password 'remote_password');</code>
    Salin selepas log masuk
  4. Buat jadual luaran:

    <code class="language-sql"> postgres=# CREATE FOREIGN TABLE cross_db_table SERVER foreign_server OPTIONS (table_name 'remote_table');</code>
    Salin selepas log masuk

Alternatif sebelum versi 9.3

Untuk versi Postgres sebelum 9.3, anda boleh menggunakan fungsi bernama dblink untuk melakukan pertanyaan silang pangkalan data. Walaupun ia dikekalkan dan diedarkan bersama PostgreSQL, penggunaannya berbeza daripada postgres_fdw. Lihat dokumentasi PostgreSQL untuk mendapatkan butiran lanjut tentang dblink.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Bertanya Merentas Pangkalan Data PostgreSQL yang Berbeza?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan