我正在尝试执行一条sql语句,该语句应将某些数据添加到数据库中,如下所示:
cursor.execute("INSERT INTO Actors (imdbPageId, fullName) VALUES (%s, %s)" % ( db.escape_string(self.imdbID), self.name))
我也尝试过:
cursor.execute("INSERT INTO Actors (imdbPageId, fullName) VALUES (%s, %s)" % ( self.imdbID, self.name))
但是无论是否使用escape_string
,我都会不断收到此错误。参见下文:
MySQLdb._exceptions.ProgrammingError:(1064,“您的SQL语法有错误;请查看与您的MySQL服务器版本相对应的手册,以获取正确的语法以在'/ name / nm0991810,Mahershala Ali附近使用)”第1行”)
我很确定它与正斜杠有关,但我无法使其正常工作。我该如何解决这个问题?
如果需要更多信息,请告诉我!
答案 0 :(得分:1)
执行此操作:
query = "INSERT INTO Actors (imdbPageId, fullName) VALUES (%s, %s)"
cursor.execute(query, (self.imdbID, self.name))
如果我没记错的话,mysqldb
会为您解决这个问题。
否则,您可以这样做:
cursor.execute(query, (db.escape_string(self.imdbID), self.name))