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

Funktion som parameter til en anden funktion i Postgres

Da hver funktion/procedure skal have en indgang i pg_proc, kan du bruge den primære nøgle til at identificere proceduren. Dette ville også eliminere problemerne med procedurer med samme navn, men forskellige antal parametre eller forskellige parametertyper.

Stenografier for dette er typerne regproc og regprocedure med tilhørende afstøbninger for lettere håndtering. Slå manualen op. for disse.

Det er ikke noget problem at identificere funktionen og videregive den:

select 'pg_database_size(oid)'::regprocedure; -- create "reference"
     regprocedure      
-----------------------
 pg_database_size(oid)

Brug regprocedure som parametertype.

Det problem, jeg endnu ikke har fundet ud af, er, hvordan man rent faktisk kalder sådan noget på en bekvem måde.



  1. Gem data til PHP / Mysql med inline redigering i CKEditor

  2. ORA-00955-navnet bruges allerede af et eksisterende objekt

  3. MySQL indstillet standard-id UUID

  4. Tabeltype i eksempel på Oracle Stored Procedure