Rumah >pangkalan data >tutorial mysql >Mengapa PostgreSQL Mengembalikan Ralat 'Perhubungan Tidak Wujud'?

Mengapa PostgreSQL Mengembalikan Ralat 'Perhubungan Tidak Wujud'?

Patricia Arquette
Patricia Arquetteasal
2025-01-20 13:46:09910semak imbas

Why Does PostgreSQL Return a

PostgreSQL "hubungan tidak wujud" Ralat: Panduan Penyelesaian Masalah

Menghadapi ralat "perhubungan tidak wujud" dalam PostgreSQL menunjukkan bahawa pertanyaan anda merujuk jadual yang tidak dapat ditemui oleh pangkalan data. Ini adalah isu biasa, selalunya berpunca daripada kesilapan mudah.

Penyebab yang kerap berlaku ialah sensitiviti kes. Nama jadual PostgreSQL adalah sensitif huruf besar. Jika jadual anda dinamakan "MyTable" tetapi pertanyaan anda menggunakan "mytable", pangkalan data tidak akan mengenalinya.

Penyelesaian 1: Penamaan Jadual Tepat dengan Petikan Berganda

Pembetulan paling mudah ialah menggunakan petikan berganda di sekeliling nama jadual anda dalam pertanyaan SQL. Ini memaksa PostgreSQL untuk memadankan kes tepat nama jadual.

<code class="language-sql">SELECT * FROM "MyTable" LIMIT 10;</code>

Penyelesaian 2: Mengubah Suai Laluan Carian

Sebagai alternatif, anda boleh melaraskan laluan carian pangkalan data. Tetapan ini menentukan susunan PostgreSQL mencari jadual. Dengan memasukkan skema yang mengandungi jadual anda dalam laluan carian, anda boleh mengelak daripada menyatakan skema secara eksplisit dalam pertanyaan anda.

Untuk mengubah suai laluan carian, gunakan perintah SET search_path:

<code class="language-sql">SET search_path TO my_schema, public;</code>

Ganti my_schema dengan nama skema sebenar. Selepas menetapkan laluan, anda boleh menggunakan pertanyaan yang lebih mudah:

<code class="language-sql">SELECT * FROM MyTable LIMIT 10;</code>

Bacaan Lanjut

Untuk pemahaman yang menyeluruh tentang mekanisme laluan carian PostgreSQL, rujuk dokumentasi rasmi: https://www.php.cn/link/d7323519970d0e3680ef5fa1edfe0e56

Atas ialah kandungan terperinci Mengapa PostgreSQL Mengembalikan Ralat 'Perhubungan Tidak Wujud'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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