PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Variabel yang ditentukan pengguna di PostgreSQL

Postgres biasanya tidak menggunakan variabel dalam SQL biasa. Tapi Anda bisa lakukan itu juga:

SET foo.test = 'SELECT bar FROM baz';

SELECT current_setting('foo.test');

Baca tentang Opsi yang Disesuaikan di manual.

Di PostgreSQL 9.1 atau sebelumnya Anda perlu mendeklarasikan custom_variable_classes sebelum Anda bisa menggunakannya.

Namun, Anda tidak bisa EXECUTE SQL dinamis tanpa PL (bahasa prosedural). Anda akan menggunakan DO perintah untuk mengeksekusi pernyataan ad-hoc (tetapi Anda tidak dapat mengembalikan data darinya). Atau gunakan CREATE FUNCTION untuk membuat fungsi yang mengeksekusi SQL dinamis (dan dapat mengembalikan data dengan cara apa pun yang dapat dibayangkan).

Pastikan untuk melindungi dari injeksi SQL saat menggunakan SQL dinamis.

Terkait:

  • Apakah ada cara untuk mendefinisikan konstanta bernama dalam kueri PostgreSQL?



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kerangka entitas PostgreSQL

  2. Alternatif Diagnostik pgDash - Manajemen Kueri PostgreSQL dengan ClusterControl

  3. INSERT INTO ... RETURNING - referensi kolom ambigu

  4. Bagaimana cara meneruskan array tipe khusus ke fungsi Postgres

  5. Bagaimana cara mengambil komentar dari database PostgreSQL?