您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

使用CSV数据从Postgres复制

使用CSV数据从Postgres复制

使用sqlCOPY命令是不可能的。COPY仅从 文件STDIN 复制。

您可以将变量的内容写入文件,也可以通过STDIN将其传递。仅适用于多于几行。

我想我在更新之前误解了您的问题,您可能不需要这个:

文件路径不能像其他数据项一样交换,因此您不能使用准备好的语句。在执行或诉诸动态sql之前,先通过服务器端函数构建 整个 语句,例如:

CREATE OR REPLACE FUNCTION f_cp(_file text)
  RETURNS void AS
$BODY$
BEGIN
EXECUTE format($$COPY zip_codes FROM %L DELIMITER ',' CSV$$, $1);
END
$BODY$
  LANGUAGE plpgsql;

称呼:

SELECT f_cp('/var/lib/postgres/sync/myfile.csv')

format() 需要Postgres 9.1或更高版本。

Postgres 2022/1/1 18:45:10 有356人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶