postgresql - “psql”中的语法错误,命令未执行
问题描述
我正在使用 timescaledb。
我正在关注的文档是使用 PostgreSQL 的 COPY将数据从 csv 文件迁移到 timescale db。csv 文件的名称是test.csv。
我创建了名为test的数据库,表的名称是test1。根据 timescaledb 文档,表是一个超表。
表的结构和 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 文件插入到 db。?
解决方案
您正在尝试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"
推荐阅读
- javascript - 一个小时无法播放一组视频
- graph - 需要:搜索大小为 n 的原子循环
- java - 带有 Java 客户端库的 Google Drive V3 在 Android 上创建无标题文件
- java - Java Flink 外部源
- mysql - Getting mysql query issue with WHERE key work. Help me to sort it out
- c# - 使用 LXD REST API,ClientWebSocket 在 .Net Core 上抛出“AuthenticationException”,但在 .Net Framework 上,它运行良好
- python - python3.7中的模块重载是如何工作的?
- java - 无法在测试行为调用的 Java 函数中使用 Citrus 变量
- apache-kafka - 使用 kafka-connect-spooldir 连接器在 Kafka Connect 中以 dd.MM.yyyy 格式解析日期
- ios - 如何为我的 iOS 应用程序集成维护模式