刚开始使用PostgreSQL触发器,我想知道以下是否可行: 我有一个表,其中一列存储图像文件的文件系统路径。例如,每个记录" img_path"字段可能包含类似" c:\ images \ a_great_image.jpg"等等。
当数据库用户更改该字段中的值时,postgresql触发器函数是否可以处理(至少尝试)"移动"该文件到新指定的位置?
非常感谢你的建议。
答案 0 :(得分:3)
是。这是可能的。以plpython为例。在触发器中使用它。
CREATE OR REPLACE FUNCTION move_file(old_path text, new_path text)
RETURNS boolean AS
$$
import shutil
try:
shutil.move(old_path, new_path)
return True
except:
return False
$$
LANGUAGE 'plpythonu' VOLATILE;