Eva*_*oll 9 postgresql stored-procedures terminology functions sql-standard
我理解以下之间的区别:
在 SQL Server 中,“存储过程”允许通过EXEC. 与使用SELECT该返回执行的任何其他函数相比,它提供了什么NULL?
当 PostgreSQL 获得存储过程时,它们会给我带来什么,规范中函数和存储过程之间的正式区别是什么?
Erw*_*ter 15
由于 Postgres函数( CREATE FUNCTION)仅在(单个)事务上下文中运行,因此无法在函数体内执行几个重要命令。喜欢CREATE DATABASE或CREATE INDEX CONCURRENTLY或VACUUM。手册:
VACUUM不能在事务块内执行。
函数通常被称为“存储过程”,这一直是一个误导性的术语 - 可能是从其他 RDBMS 继承而来的。随着SQL 过程( CREATE PROCEDURE) 在 Postgres 11 中的出现,应该完全避免用词不当。
SQL 过程可以开始和结束事务。但是上面提到的命令根本不允许在任何事务块中,所以那些也不能包含在 SQL 过程中,(还)。
为未来计划了多个结果集,但尚未实施。
有关的:
PostgreSQL 函数不能开始或结束事务。他们坚持从调用查询中继承的任何事务。
当 PostgreSQL 获得存储过程时,它们将能够打开和关闭事务。
也可以看看,
| 归档时间: |
|
| 查看次数: |
8324 次 |
| 最近记录: |