![](/img/trans.png)
[英]How do I solve this problem to use psql? | psql: error: FATAL: role "postgres" does not exist
[英]How do I solve "ERROR: missing data for column" with "psql"?
我有一個 makefile,我試圖在其中將 Python 程序的輸出復制到我的 PostgreSQL 服務器上托管的表中。
我的查詢看起來像這樣:
Python3 filter.py | psql -X -U $(DBUSER) -d $(DBNAME) -h $(DBHOST) -p $(DBPORT) -1 -e \
-c "COPY table1(col1, col2) FROM STDIN with (format csv, header true, delimiter '|')"
但是,當我執行它時,我收到以下錯誤消息:
ERROR: missing data for column "col1"
CONTEXT: COPY table1, line 168061: ""
為了嘗試理解這個問題,我將 Python 程序的輸出導出到一個 CSV 文件,我意識到這個問題來自於第 168060 行之后沒有更多條目的事實。所以第 168061 行確實是空的。
我曾嘗試將NULL
選項用於COPY
但它沒有用,我得到了同樣的錯誤。
我還設法使用非常相似的COPY
語句將物理 CSV 文件的內容導入table1
。 這行得通,但我的目標是在無需創建文件的情況下實現這一目標。
有任何想法嗎?
解決方案是更改filter.py
以使其不輸出有問題的空行。
謝謝大家的答案,
事實上,我只是在 filter.py 中做了一個簡單的修改,現在它可以工作了。 在使用 PSQL 導入期間,我太專注於做這件事了。
干杯:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.