[英]SQL syntax error on INSERT
I keep running into an error from the following statement: 我继续遇到以下声明中的错误:
cursor.execute("""INSERT into financial_statements (url)
VALUES (%s) WHERE provider=%s AND date=%s""", (url, provider, date))
The error I get is: 我得到的错误是:
_mysql_exceptions.ProgrammingError: (1064, "You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version for the right syntax to use near
'WHERE provider='ANGEL' AND date='2012-03-01'' at line 2")
You can't have a WHERE clause for an INSERT statement. INSERT语句不能有WHERE子句。
Maybe you meant to perform an UPDATE? 也许你打算进行更新?
UPDATE financial_statements
SET url = %s
WHERE provider=%s AND date=%s
It makes no sense to use WHERE
in an INSERT
statement - there is nothing to restrict. 在
INSERT
语句中使用WHERE
是没有意义的 - 没有什么可以限制的。
If you want to modify an existing row, use UPDATE
: 如果要修改现有行,请使用
UPDATE
:
UPDATE financial_statements SET url=%s WHERE provider=%s and DATE=%s
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.