PL/pgSQL

E97109

PL/pgSQL is PostgreSQL’s procedural extension of SQL that allows writing stored functions and triggers with control structures like variables, loops, and conditionals.

Jump to: Surface forms Statements Referenced by

Observed surface forms (1)


Statements (70)

Predicate Object
instanceOf PostgreSQL extension
SQL extension
procedural programming language
abbreviationOf PL/pgSQL self-linksurface differs
surface form: Procedural Language/PostgreSQL Structured Query Language
category database programming language
server-side scripting language
designedFor PostgreSQL
developedFor server-side programming
documentationURL https://www.postgresql.org/docs/current/plpgsql.html
executionModel compiled to internal bytecode
executed inside PostgreSQL backend process
hasSyntax BEGIN-END block
CREATE FUNCTION
DECLARE block
EXCEPTION block
influencedBy PL/SQL
surface form: Oracle PL/SQL
integratedWith PostgreSQL query planner
PostgreSQL transaction manager
PostgreSQL type system
languageName PL/pgSQL self-link
primaryUse automation of database tasks
business logic in the database
data validation
runsOn PostgreSQL
surface form: PostgreSQL server
supportsFeature AFTER triggers
BEFORE triggers
CASE statements
DEFAULT parameter values
FOR loops
FOREACH loops
IF statements
IMMUTABLE function attribute
INOUT parameters
INSTEAD OF triggers
NEW and OLD row references
OUT parameters
PERFORM statement
RAISE EXCEPTION
RAISE INFO
RAISE NOTICE
RAISE WARNING
RAISE statements
RETURN NEXT
RETURN QUERY
SECURITY DEFINER functions
SECURITY INVOKER functions
STABLE function attribute
STRICT option for functions
VOLATILE function attribute
WHILE loops
composite types
conditionals
control structures
cursors
dynamic SQL
exception handling
local variables
loops
named parameters
prepared statements
record types
row-level triggers
statement-level triggers
stored functions
stored procedures
transaction control
trigger functions
triggers
user-defined types
variables

Referenced by (4)

Full triples — surface form annotated when it differs from this entity's canonical label.

PL/pgSQL abbreviationOf PL/pgSQL self-linksurface differs
this entity surface form: Procedural Language/PostgreSQL Structured Query Language
PL/pgSQL languageName PL/pgSQL self-link
PL/Tcl relatedTo PL/pgSQL
PostgreSQL supportsLanguage PL/pgSQL