sql >> Database teknologi >  >> RDS >> PostgreSQL

Brugerdefinerede variabler i PostgreSQL

Postgres bruger normalt ikke variabler i almindelig SQL. Men du kan gør det også:

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

SELECT current_setting('foo.test');

Læs om tilpassede muligheder i manualen.

I PostgreSQL 9.1 eller tidligere var du nødt til at erklære custom_variable_classes før du kunne bruge det.

Du kan dog ikke EXECUTE dynamisk SQL uden PL (proceduresprog). Du ville bruge en DO kommando til at udføre ad-hoc-sætninger (men du kan ikke returnere data fra den). Eller brug CREATE FUNCTION at skabe en funktion, der udfører dynamisk SQL (og kan returnere data på enhver tænkelig måde).

Sørg for at sikre dig mod SQL-injektion, når du bruger dynamisk SQL.

Relateret:

  • Er der en måde at definere en navngivet konstant i en PostgreSQL-forespørgsel?



  1. Konfiguration af databasemail i SQL Server

  2. Parallelisme kommer til VAKUUM

  3. Sammenligning af store og små bogstaver i SQL

  4. Hvad er en kandidatnøgle i databasedesign?