代码之家  ›  专栏  ›  技术社区  ›  Apoorv Agarwal

postgresql中copy和copy命令的区别

  •  3
  • Apoorv Agarwal  · 技术社区  · 7 年前

    要在postgresql中的文件和表之间传输数据,有两个选项

    COPY my_table FROM '/Users/user/Downloads/test.csv' DELIMITER ',' CSV HEADER;
    

    或者

    \COPY my_table FROM '/Users/user/Downloads/test.csv' DELIMITER ',' CSV HEADER;
    

    我的问题是两者有什么区别,哪一个更快?

    1 回复  |  直到 7 年前
        1
  •  7
  •   Zaid Khan Konrad Rudolph    7 年前

    这个 COPY 命令在服务器端完全执行-输入/输出与服务器端流相关。但是这些流可以重定向到客户端-当您运行 复制 在预先配置的环境中。 \COPY 就是这个案子。

    \复制 psql 的命令-只能从 psql语言 它为可能的从客户端流的读/写准备内部环境,并执行 复制 命令。

    所以 复制 \复制 是最小的。 \复制 复制 以不同的配置执行,以便从客户端读取/写入可能的数据。表演应该是一样的- \复制 可能会因为网络开销而稍微慢一点(很明显),但应该不是很明显。在这种情况下,通信协议应该是有效的。