postgresql - 将 CSV 文件数据导入 PostgreSQL 表自动化
问题描述
如果 nrgcore.bookmarks 表为空,下面的导入命令可以正常工作,请让我知道如何在下面的命令中包含“截断表 ngrcore.bookmarks”,以便它首先截断表,然后成功导入数据。
psql -U nrgadmin -d enwdb -c "COPY nrgcore.bookmarks(login, application, description, centerx, centery, scale, bookmarkid, path) FROM 'D:\Bookmarks_Table\Bookmarks.csv' DELIMITER ',' CSV HEADER"
任何帮助/建议将不胜感激。
解决方案
您可以创建一个包含以下内容的 sql 文件,而不是传递内联查询:
TRUNCATE TABLE nrgcore.bookmarks;
COPY nrgcore.bookmarks(login, application, description, centerx, centery, scale, bookmarkid, path) FROM 'D:\Bookmarks_Table\Bookmarks.csv' DELIMITER ',' CSV HEADER;
并将其传递给您的命令行参数:
psql -U nrgadmin -d enwdb -f import.sql
推荐阅读
- tcl - 使用 tcl 脚本将数据提取到不同的文件
- xamarin - 无法从 Visual Studio for mac 中的 nuget 包安装 ReactiveUI
- ios - 滚动期间崩溃,因为边界返回为零
- z3 - 使用 SMT 2 输入格式在 Z3 中的 BitVec 中计数
- c# - 如何在 C# 中手动验证自签名证书?
- google-cloud-platform - Google Cloud Stackdriver 监控 - 计算引擎磁盘空间
- python - 注销时使 AWS Cognoto 令牌无效
- php - PHP 的 symlink() 可以创建相对符号链接吗?
- java - 使用 JDBC 以引用顺序创建外键和索引
- css - 在响应视图上禁用粘滞侧边栏