我是Python的新手。我正在执行这个非常基本的查询:
connection = psycopg2.connect("dbname='test' host='localhost' user='admin' password='pass' port='9100'")
cur = connection.cursor()
cur.execute("""SELECT id FROM pages WEHERE uri = %(uri)s""", {'uri': uri})
row = cur.fetchall()
并不断收到此错误:
<class 'psycopg2.ProgrammingError'>
('syntax error at or near "uri"\nLINE 1: SELECT id FROM pages WEHERE uri = \'http://example.com/index.php...\n ^\n',)
uri
是一个字符串,其值为http://example.com/index.php
答案 0 :(得分:2)
应该是:
cur.execute("""SELECT id FROM pages WHERE uri = %(uri)s""", {'uri': uri})
也就是说,它应该是where
而不是wehere
。由于SQL中没有wehere
之类的函数,因此抛出了语法错误。
错误本身是不言自明的。下次,请仔细阅读错误消息。