我正在尝试使用python GUI连接MySQL数据库。但是这部分代码返回一个空集。我不确定我的代码有什么问题,因为没有错误代码......请帮忙!
def ButtonPressed (self):
print("Finding Parts!")
self.ProdNum = self.aVar.get()
print("Entry text was:", self.ProdNum)
self.db = mysql.connector.connect (user='ezhu', password='<password>', host='127.0.0.1', database='centricsit_prices')
self.query = ("SELECT sd, sy, price FROM css_hp WHERE prod_num = '%s'")
self.cursor = self.db.cursor()
self.cursor.execute (self.query, (self.ProdNum))
self.results = self.cursor.fetchall()
print (self.results)
self.cursor.close()
答案 0 :(得分:1)
您缺少逗号:
self.cursor.execute (self.query, (self.ProdNum, ))
HERE^
这非常重要,因为查询参数应该作为可迭代的传递。逗号会使它成为一个元组。如果没有逗号,您将查询参数作为字符串传递,这也是一个可迭代的,因此您的查询使用self.ProdNum
的第一个字符进行参数化,因此没有选择查询匹配。