postgresql - 在文件系统上移动文件的 PostgreSQL 触发器

标签 postgresql triggers

刚刚开始使用 PostgreSQL 触发器,想知道以下是否可行: 我有一个表,其中一列存储图像文件的文件系统路径。例如,每条记录的“img_path”字段可能包含“c:\images\a_great_image.jpg”之类的内容。

当数据库用户更改该字段中的值时,postgresql 触发器函数是否可能负责(至少尝试)将该文件“移动”到其新指定的位置?

非常感谢您的建议。

最佳答案

是的。这是可能的。以 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;

关于postgresql - 在文件系统上移动文件的 PostgreSQL 触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9252096/

相关文章:

postgresql - SequelizeConnectionAcquireTimeoutError 无处不在

postgresql - Postgres 中具有特殊逻辑的 2 个字段的唯一约束

MySQL-在插入满足其他值的位置后触发更新另一个表中的列

mysql - 触发语法问题

postgresql - 没有新列的表继承

sql - postgres 中的 distinct() 函数(不是选择限定符)

postgres 数组的正则表达式

c - 来自 PSQL 触发器的提示

stored-procedures - 不修改的 Derby 程序

mysql - 更新时间戳触发器不起作用