如何在PostgreSQL中创建临时函数?
我必须在数据库中执行循环。这只是一次性要求。
执行该函数后,我现在正在删除该函数。
有没有什么好的方法来创建临时/一次性功能?
没有找到相关结果
已邀请:
4 个回复
诫商
只要你的连接四处奔波,它就会成为一种功能。无需调用drop命令。
链眷克袒姜
在
(默认情况下是这样),根据Tom Lane来防止特洛伊木马:
在临时模式中创建的函数仅在同一会话中可见(就像临时表一样)。它对所有其他会话都是不可见的(即使是相同的角色)。您可以在
之后在同一会话中以不同的角色访问该功能。 您甚至可以基于此“临时”函数创建功能索引:
从而在非临时表上使用临时函数创建普通索引。这样的索引对所有会话都是可见的,但仍然只对创建会话有效。查询计划程序将不使用功能索引,其中表达式不会在查询中重复。还是有点肮脏的把戏。它会在会话关闭时自动删除 - 作为依赖对象。不应该允许这样的感觉...... 如果您只需要重复执行一个函数并且只需要SQL,那么请考虑使用预准备语句。它的行为很像临时SQL函数,在会话结束时死掉。但是,它不是同一个东西,只能用于
,而不是嵌套在另一个查询中。例:
呼叫:
细节: 拆分给定字符串并准备case语句
呸溉
掀辟髓观粟