3

我正在尝试从用 PL/Python 编写的 PostgreSQL 函数调用外部 Python 脚本文件。

我的直觉驱使我编写这样的代码:

CREATE OR REPLACE FUNCTION foo() Returns boolean AS
$$
import subprocess
cmd = "C:\\Python27\\python.exe" 
file_to_execute = "C:\\Users\\manager_gui.py"
subprocess.check_call([cmd, file_to_execute])
$$
LANGUAGE 'plpython3u' VOLATILE;

但是当我执行SELECT foo()它时,它会返回此错误消息:

"Command '['C:\\Python27\\python.exe', 'C:\\Users\\manager_gui.py']' returned non-zero exit status 2"

我用谷歌搜索了它,显然它处理的是执行权限问题。但我真的不确定...

所以让我问一下是否真的可以做我想做的事情以及我是否使用好的方法?

如果答案是肯定的,我该如何管理我的 PosgreSQL 用户和脚本文件所有者之间的执行权限问题?

先感谢您,

马丁

4

0 回答 0