sql >> Database >  >> RDS >> PostgreSQL

Is het mogelijk om globale variabelen te definiëren in postgresql

Voortbouwend op het antwoord van @klin, zijn er een aantal manieren om een ​​configuratieparameter buiten de huidige sessie te behouden. Merk op dat deze superuser-rechten vereisen.

Een waarde instellen voor alle verbindingen met een bepaalde database:

ALTER DATABASE db SET abc.xyz = 1;

U kunt ook een serverbrede waarde instellen met behulp van het ALTER SYSTEM commando, toegevoegd in 9.4. Het lijkt alleen te werken voor door de gebruiker gedefinieerde parameters als ze al zijn SET in uw huidige sessie. Merk ook op dat dit een herladen van de configuratie vereist om van kracht te worden.

SET abc.xyz = 1;
ALTER SYSTEM SET abc.xyz = 1;
SELECT pg_reload_conf();

Vooraf 9.4 kunt u hetzelfde bereiken door de parameter toe te voegen aan de postgresql.conf van uw server het dossier. In 9.1 en eerder moet u ook een klasse voor vrije variabelen registreren.



  1. Een PL/SQL-tabel vullen vanuit een blok in Oracle D2k Forms

  2. Hoe doe ik top 1 in Oracle?

  3. Afbeelding opslaan in database-blob; ophalen van db naar Picturebox

  4. Kun je in postgres de standaardopmaak instellen voor een tijdstempel, per sessie of globaal?