"psql" 语法错误,命令未执行

Syntax error in "psql" , command not get executed

我正在使用 timescaledb。

我遵循的证明是Using PostgreSQL's COPY 将数据从 csv 文件迁移到时间刻度数据库。 csv文件的名称是test.csv.

我创建了名为 test 的数据库,table 的名称是 test1。根据 timescaledb 文档,Table 是一个 hypertable。

table的结构和csv文件结构相同。

在 cmd 中执行以下命令时,除了在控制台命令 test-#

中添加 - 符号外,我没有得到其他结果
psql -d test -c "\COPY test1 FROM C:\Users\DEGEJOS\Downloads\test.csv CSV"

如果我在命令后加上; psql -d test -c "\COPY test1 FROM C:\Users\DEGEJOS\Downloads\test.csv CSV"; 我在第 1 行收到语法错误。

如何解决这个错误并将数据从 csv 文件插入到数据库中?

您正尝试在 psql 会话中使用 \COPY 运行 psql,因此在第二次调用中出现错误,因为 psql 关键字SQL 中不存在。 psql 是可执行文件。

要按照Timescale 的说明操作,您需要直接在CMD 中调用命令。即,调用:

psql -d test -c "\COPY test1 FROM C:\Users\DEGEJOS\Downloads\test.csv CSV"

如果您在屏幕截图中处于 C:\Users\DEGEJOS,它将看起来像:

C:\Users\DEGEJOS\psql -d test -c "\COPY test1 FROM C:\Users\DEGEJOS\Downloads\test.csv CSV"