gpt4 book ai didi

postgresql - 不可变严格被 plv8 函数忽略

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

我认为 immutable strict 不能修改数据库。

以下在“some_table”中插入一个新行:

CREATE FUNCTION insert_row() RETURNS void AS
$$
plv8.execute('INSERT INTO some_table (number) VALUES ($1)', [123]);
$$
LANGUAGE plv8 IMMUTABLE STRICT;

是否无法阻止函数修改数据库?

最佳答案

这符合我的预期。

如果我执行类似的东西:

select insert_row() from some_OTHER_table;

无论 some_other_table 中的行数如何,我都会在 some_table 中得到一个新行。

如果您不希望您的函数修改您的数据库,只需不要在其中放置插入或更新语句即可。

关于postgresql - 不可变严格被 plv8 函数忽略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24471331/

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