作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我编写了将新版本的文件添加到表中的函数。函数的用户应该调用 update_file(path_to_file)。我需要从文件加载所有内容并将其存储到表中,例如:
insert into file(new_version, new_content);
现在我可以找到一种方法来读取所有内容并将其放入表格中。 COPY命令允许我将文件连接为行序列。我看到唯一的联系线路的方法,但我不喜欢这种方法。
有什么好的解决办法吗?
谢谢。
最佳答案
我找到了以下解决方案,希望对某人有所帮助。
CREATE OR REPLACE FUNCTION read_file_utf8(path CHARACTER VARYING)
RETURNS TEXT AS $$
DECLARE
var_file_oid OID;
var_record RECORD;
var_result BYTEA := '';
BEGIN
SELECT lo_import(path)
INTO var_file_oid;
FOR var_record IN (SELECT data
FROM pg_largeobject
WHERE loid = var_file_oid
ORDER BY pageno) LOOP
var_result = var_result || var_record.data;
END LOOP;
PERFORM lo_unlink(var_file_oid);
RETURN convert_from(var_result, 'utf8');
END;
$$ LANGUAGE plpgsql;
关于postgresql-9.5 - 如何在函数中加载整个内容文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45241088/
我是一名优秀的程序员,十分优秀!