我创建了一个包含两列的表:两个都是数字的varchars。 我的文本文件也有两列,用逗号分隔。
这是我正在使用的命令(用于区分语法的斜体):
COPY *table_name*
FROM '*/C:/Users/username/Desktop/filename.txt*'
DELIMITER ',' CSV;
我收到此错误: 错误:“COPY FROM'filename'...”目前不支持
我读到的每个地方都说我需要使用COPY FROM命令,但错误表明它不受支持。 我已经尝试将正斜杠更改为反斜杠和双反斜杠。
答案 0 :(得分:0)
在这里,我认为您忘记在 COPY FROM 之间添加表名。它应该 COPY TABLE_NAME FROM
以下是它的工作示例:
CREATE TABLE master
(
master_id serial NOT NULL,
master_name character varying,
CONSTRAINT master_pkey PRIMARY KEY (master_id),
CONSTRAINT unique_master UNIQUE (master_name)
)
WITH (
OIDS=FALSE
);
ALTER TABLE master
OWNER TO postgres;
1,master01
2,master02
从CSV文件到主表的SQL COPY:
COPY master FROM 'D:\demo.csv' DELIMITER AS ',';
注意:在许多情况下,如果您将CSV文件放在C:\中,它会给出 访问被拒绝错误。所以我把它放在D:\
中