我刚刚结束了有关在论坛数据库中阻止垃圾邮件的内容,现在是时候清理它们了。
目标是使用h1 {
margin-left: auto;
margin-right: auto;
}
语句更新数据库记录并删除标记为垃圾邮件的帖子。 scratch头并从在线讲师(这是在线课程)上收到模糊的提示和指示后,我遇到了错误。
这可能不是执行此操作的正确方法,在Google运气不好之后,我正在寻求指导。
这是update
的代码段:
forumdb.py
这是我得到的错误:
# "Database code" for the DB Forum.
import bleach
import psycopg2
import datetime
DBNAME = "forum"
def get_posts():
"""Return all posts from the 'database', most recent first."""
db = psycopg2.connect(database=DBNAME)
c = db.cursor()
UPDATE posts
SET content = 'cheese'
WHERE content like 'spam' ;
c.execute("select content, time from posts order by time desc")
return c.fetchall()
db.close()
def add_post(content):
"""Add a post to the 'database' with the current timestamp."""
db = psycopg2.connect(database=DBNAME)
c = db.cursor()
clean_cont = bleach.clean(content)
c.execute("insert into posts values (%s)", (clean_cont,))
db.commit()
db.close()
如果有帮助,请访问forum.py:
Traceback (most recent call last):
File "forum.py", line 7, in <module>
from forumdb import get_posts, add_post
File "/vagrant/forum/forumdb.py", line 13
UPDATE posts
^
SyntaxError: invalid syntax
在此先感谢任何有天赋能力的人!
答案 0 :(得分:1)
您的查询
UPDATE posts
SET content = 'cheese'
WHERE content like 'spam' ;
超出范围。删除或放在c.execute()
函数上,如下所示
c.execute("UPDATE posts SET content = 'cheese' WHERE content like 'spam';");
这就是为什么您会收到此错误,希望对您有帮助。