[英](psycopg2.errors.UndefinedColumn) column "name" does not exist
[英]psycopg2 - UndefinedColumn: column "datetime" of relation "<table_name>" does not exist
我收到此錯誤消息
UndefinedColumn: column "datetime" of relation "daily_price" does not exist
LINE 1: INSERT INTO public.daily_price (DateTime) VALUES ('200...
^
代碼
cur.execute("INSERT INTO public.daily_price (DateTime) VALUES ('"+str(day)+"')");
如何在不改變數據庫的情況下處理保留字列?
正如蒂姆羅伯茨指出的那樣,你有一個不同的問題。
這是使用 DateTime 作為列名並成功執行的示例 SQL:
CREATE TEMPORARY TABLE foo (DateTime timestamp);
INSERT INTO foo (DateTime) VALUES (now());
為了完整起見,當您真正使用 postgres 在上下文中反對的保留關鍵字時,會發生以下情況:
CREATE TEMPORARY TABLE foo (select timestamp);
INSERT INTO foo (select) VALUES (now());
ERROR: syntax error at or near "select"
LINE 1: CREATE TEMPORARY TABLE foo (select timestamp);
^
ERROR: syntax error at or near "VALUES"
LINE 1: INSERT INTO foo (select) VALUES (now());
要解決這種情況,您可以使用雙引號:
CREATE TEMPORARY TABLE foo ("select" timestamp);
INSERT INTO foo ("select") VALUES (now());
這將正常工作 - 但這不是你的問題。 您沒有看到的東西是架構錯誤的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.