Itu salah paham. Postgres tidak "mengubah format". String SQL asli tidak disimpan sama sekali .
Kueri diuraikan dan ditulis ulang dan tergantung pada jenis kueri, tindakan diambil. Misalnya , saat Anda membuat tampilan , hasilnya disimpan dalam katalog sistem, sebagian besar pg_class
dan pg_rewrite
.
Anda juga harus menyadari bahwa semua pengenal diselesaikan pada waktu pembuatan objek database, dengan mengambil search_path
dan visibilitas ke akun (pengikatan awal). String kueri yang sama dapat memiliki arti yang berbeda nantinya, jika lingkungan berubah dengan cara apa pun.
Apa yang Anda lihat nanti adalah direkayasa ulang versi yang dibuat dari entri ini. Ada beberapa fungsi bawaan untuk membantu dengan itu, tetapi sebagian besar terserah klien bagaimana memformat kode SQL rekayasa balik.
Fungsi merupakan pengecualian (sebagian). Badan fungsi dilewatkan sebagai string dan disimpan apa adanya , persis seperti yang diteruskan, dengan (saat ini) hanya pengujian sintaksis dan validasi objek yang dangkal. Jika Anda ingin cara cepat untuk "menyimpan" kueri termasuk formatnya di dalam Postgres, Anda dapat menggunakan fungsi PL/pgSQL, misalnya.
Pendekatan umum adalah memiliki repositori kode independen seperti @Mike sudah disarankan - atau tidak terlalu mempedulikan formatnya.