我不斷收到這個psycopg錯誤,列不存在
error: psycopg2.ProgrammingError: column "someentry" does not exist.
的錯誤,表示當someentry
不是列,它只是一個進入分貝值的列someentry
不存在。
下面是給出了錯誤代碼:
cur.execute('INSERT INTO {0!s} (ip_id, item) VALUES ({1!s}{2!s})'.format('mytable',1,'someentry'))
這是我如何創建我的表:
tablename = 'mytable'
command = """
CREATE TABLE IF NOT EXISTS {} (
ip_id SERIAL PRIMARY KEY,
item VARCHAR(255) NOT NULL
)
""".format(tablename)
cur.execute(command)
菲利普,謝謝。有效。但是,你能否通過「逃避字符串」來解釋你的意思?你所做的只是使用%s字符串格式。這是如何逃避字符串? psycopg會自動逃脫嗎? – 7alman
@ 7alman:是的,您可以閱讀psycopg2的這篇文章:http://initd.org/psycopg/docs/usage.html#query-parameters –