多语言展示
当前在线:380今日阅读:113今日分享:31

详说 Navicat for PostgreSQL 函数

Navicat for PostgreSQL 是一套易于使用的图形化数据库管理工具。可使用强劲的 SQL 编辑器创建和运行查询、函数和使用多功能的数据编辑工具管理数据。本教程Navicat官网将详细介绍 Navicat for PostgreSQL 函数高级属性。
方法/步骤
1

拥有者:函数的拥有者。需要注意的是,仅支持 PostgreSQL 8.0 或以上版本。语言:函数实施的语言名。可能是 SQL、 C、内部或用户定义过程语言名。为了向后兼容,名可能是用单引号括着。挥发性:这些属性告知查询优化器有关函数的性能,最多可指定一个选择。如果这些没有出现,默认的是 VOLATILE。

2

● IMMUTABLE:函数不能修改数据库,当给予相同的引数值时,总是返回相同的结果,也就是说,它不会做数据库查找或以其它方式使用信息,不直接出现在其引数列表。如果使用这个选项,任何函数调用的全部常数引数可以立即替换函数值。

3

● STABLE:函数不能修改数据库,单一表扫描它时,会为相同的引数值一致地返回相同的结果,但其结果可能会改变整个 SQL 语句,函数结果取决于数据库查找、参数变量(例如当前时区)等选择功能。此外,请注意函数的 current_timestamp 家族限制为稳定,因为它们的值不会在事务中改变。

4

● VOLATILE:函数值能在单一表扫描中改变,因此没有优化。相对少数数据库函数是易变的,有些例子是 random()、 currval()、 timeofday()。但请注意,任何具有副作用的函数必须分类为易变,即使其结果是相当明确的,以防止调用不断优化,例子是 setval()。

5

定义者安全性:指定函数运行时使用创建它的用户权限。返回集:表示函数将返回一组项目,而不是一个单一项目。严格:表示每当函数的引数是 null 时,它总是返回 null。如果此参数被指定,当有 null 引数时,函数不会运行。相反,一个null 结果会自动假定。

6

估计耗费:一个正数来估计函数的运行耗费,使用 cpu_operator_cost 的单位。如果函数返回一个集,这是每返回列的耗费。如果耗费没有被指定,C 语言及内部函数假定 1 单位,其他语言为 100 单位。较大的值策划者应尽量避免比需要过多的评估函数。需要注意的是,仅支持 PostgreSQL 8.3 或以上版本。

7

估计行:一个正数来估计策划者应预期返回的行数,这只允许当函数被声明为返回一个集,仅支持 PostgreSQL 8.3 或以上版本。配置参数:当函数输入时设置到指定值的配置参数,当函数离开时还原到以前的值,仅支持 PostgreSQL 8.3 或以上版本。

推荐信息