gpt4 book ai didi

sql - PostgreSQL 创建引用不存在表的函数

转载 作者:行者123 更新时间:2023-11-29 12:16:22 24 4
gpt4 key购买 nike

我正在尝试定义一个引用将来定义的临时表的函数,但在创建时出现以下错误:

DROP FUNCTION IF EXISTS test_function();
CREATE FUNCTION test_function()
RETURNS void AS $$
SELECT * FROM temp_table
$$ LANGUAGE SQL;

ERROR: relation "_temp_table" does not exist LINE 7: FROM temp_table

有没有办法定义引用不存在的表的 Postgresql 函数?

我可以创建一个空的临时表作为函数创建的一部分 - 但它有点难看...

任何帮助将不胜感激...

谢谢

最佳答案

您可以使用 check_function_bodies在加载函数时关闭引用,就像 pg_dump 所做的那样。

set check_function_bodies = off;

DROP FUNCTION IF EXISTS test_function();
CREATE FUNCTION test_function()
RETURNS void AS $$
//your code actually doing something with tables/functions that don't exist yet
$$ LANGUAGE SQL;

set check_function_bodies = on;

关于sql - PostgreSQL 创建引用不存在表的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52005611/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com