【发布时间】:2022-01-27 09:04:01
【问题描述】:
使用 Linux 命令 df -Ph > metric.csv 创建此输出:
Filesystem Size Used Avail Use% Mounted on
udev 3.9G 0 3.9G 0% /dev
tmpfs 786M 2.2M 783M 1% /run'''
我登录到 postgres 并创建表:
CREATE TABLE metric(filesystem varchar,size varchar,used
varchar,available varchar,use varchar,mounted_on varchar, PRIMARY
KEY(filesystem));
接下来我使用 COPY 命令将数据插入到这个表中:
COPY metrics (filesystem,size,used,available,use,mounted_on) FROM '/data/metric.csv' CSV HEADER DELIMITER ',';
我收到以下错误:
ERROR: missing data for column "size"
CONTEXT: COPY metrics, line 2: "udev 3.9G 0 3.9G 0% /dev"
如果我能提供任何帮助或建议来解决此问题,我将不胜感激,以便我可以将数据插入数据库。
【问题讨论】:
-
嗯...仅仅因为您将其称为
metric.csv并不能使其成为 CSV 文件。您明确指定,作为分隔符,并且您的df输出中没有逗号;postgres找不到size(或任何其他列,就此而言)似乎是合乎逻辑的。
标签: linux postgresql postgresql-12