数据库中的 PostgreSQL 函数

Posted

技术标签:

【中文标题】数据库中的 PostgreSQL 函数【英文标题】:PostgreSQL function in database 【发布时间】:2017-08-17 17:28:44 【问题描述】:

我在 PostgreSQL 中创建了一个函数,我在 java 中使用 JDBC 调用了这个函数。我不确定这个函数是否适用于每个模式。我的意思是,如果我没有任何架构怎么办?

在 PostgreSQL 中是否可以在数据库中而不是在特定模式中创建函数?

【问题讨论】:

把它放在public 模式中?这是必然存在的。 然后通过模式引用它,即 public.function() 【参考方案1】:

来自官方文档

如果包含架构名称,则在指定架构中创建函数。否则,它会在当前架构中创建。

https://www.postgresql.org/docs/9.5/static/sql-createfunction.html

数据库包含一个或多个命名模式,而这些模式又包含表。 架构还包含其他类型的命名对象,包括数据类型、函数和运算符

https://www.postgresql.org/docs/9.1/static/ddl-schemas.html

所以我相信你不能

【讨论】:

以上是关于数据库中的 PostgreSQL 函数的主要内容,如果未能解决你的问题,请参考以下文章

Postgres数据库之聚集函数内核源码学习总结

从烧瓶中的 PostgreSQL 函数提交事务

如何运行从 postgresql 中的函数生成的查询

postgresql 上的更新类型

如何在 postgresql 中使用 postgres_fdw 从另一个数据库中获取记录

postgres 错误:Postgresql 11.6 中的列不存在错误