sql - postgres 抛出的 COPY FROM 中的语法错误
问题描述
我正在尝试将数据从管道分隔的文本文件导入到我的 Postgresdata_master
表中。我的命令如下所示:
COPY data_master FROM '/Users/me/Documents/DATA/39079.txt'
WITH FORMAT csv,
DELIMITER '|',
HEADER TRUE;
这是错误:
temp=# COPY data_master FROM '/Users/me/Documents/DATA/39079.txt' WITH FORMAT csv, DELIMITER '|', HEADER TRUE;
ERROR: syntax error at or near "FORMAT"
LINE 1: .../me/Documents/DATA/39079.txt' WITH FORMAT csv...
^
temp=# show server_version;
-[ RECORD 1 ]--+-----
server_version | 10.1
从文档来看,这似乎是该命令的有效语法。我做错了什么?
编辑:我在删除逗号后也尝试了这个,结果相同:
temp=# COPY data_master FROM '/Users/me/Documents/DATA/39079.txt' WITH FORMAT CSV DELIMITER '|' HEADER TRUE;
ERROR: syntax error at or near "FORMAT"
LINE 1: .../me/Documents/DATA/39079.txt' WITH FORMAT CSV...
^
解决方案
以下语法WITH
应在括号中。
COPY data_master FROM '/Users/me/Documents/DATA/39079.txt'
WITH (
FORMAT csv,
DELIMITER '|',
HEADER TRUE
);
推荐阅读
- maven - 错误:在 ecplise 中编码 UTF-8 的不可映射字符
- javascript - 如何使用 angularjs 使用过滤器进行 ng-repeat?
- c# - 可视化安装程序项目 - 安装后没有管理员权限无法运行应用程序
- vba - 如何在 Visio-VBA 中输出形状 ID
- php - 在另一个视图页面中查看未显示
- html - 在响应式网页中将图像恢复为原始大小
- java - rs.next() 在 while 语句中返回 false
- java - 如何在 Spring Rest mvc 5 中获取 Jackson 对象映射器?
- visual-studio - 在本地托管自定义 Visual Studio 模板
- tensorflow - 张量流中的图优化阶段