[英](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.