Movatterモバイル変換


[0]ホーム

URL:



Facebook
Postgres Pro
Facebook
Downloads
36.4. User-Defined Procedures
Prev UpChapter 36. ExtendingSQLHome Next

36.4. User-Defined Procedures#

A procedure is a database object similar to a function. The key differences are:

  • Procedures are defined with theCREATE PROCEDURE command, notCREATE FUNCTION.

  • Procedures do not return a function value; henceCREATE PROCEDURE lacks aRETURNS clause. However, procedures can instead return data to their callers via output parameters.

  • While a function is called as part of a query or DML command, a procedure is called in isolation using theCALL command.

  • A procedure can commit or roll back transactions during its execution (then automatically beginning a new transaction), so long as the invokingCALL command is not part of an explicit transaction block. A function cannot do that.

  • Certain function attributes, such as strictness, don't apply to procedures. Those attributes control how the function is used in a query, which isn't relevant to procedures.

The explanations in the following sections about how to define user-defined functions apply to procedures as well, except for the points made above.

Collectively, functions and procedures are also known asroutines. There are commands such asALTER ROUTINE andDROP ROUTINE that can operate on functions and procedures without having to know which kind it is. Note, however, that there is noCREATE ROUTINE command.


Prev Up Next
36.3. User-Defined Functions Home 36.5. Query Language (SQL) Functions
pdfepub
Go to Postgres Pro Standard 17
By continuing to browse this website, you agree to the use of cookies. Go toPrivacy Policy.

[8]ページ先頭

©2009-2025 Movatter.jp