我试图从MySQL数据库中更新和删除一行字段,该行的名称与键入的值相同。我正在使用python 2.7和MySQLdb。下面是脚本的一部分:使用Python在MySQL中更新和删除键值
Value = int(input("Type a number between 1 and 10: "))
cursor.execute("DELETE FROM test WHERE name=Value ")
Value2 = int(input("Type a number between 11 and 20: "))
cursor.execute("UPDATE test SET id='abcd' WHERE name=Value2")
其实我试图找出如何让我从我的键盘键入更新和删除MySQL的代码,并使用该值作为名称的数据库更改名称字段的行。因为它现在是它给了我第二和第四行的SQL语法错误。你能告诉我我该如何解决这个问题?
我已经有同样的问题插入一个值,但问题已经解决了一些人的帮助从计算器。这里是插入的解决方案,这很好用:
cursor.execute("INSERT INTO test VALUES ('Number', %s)", (Value,))
cursor.execute("""INSERT INTO test VALUES ('Number', {})""".format(Value)
cursor.execute("""INSERT INTO test VALUES ('Number', %s)""" % Value)
我也想知道如何调用%s。请帮忙。
你需要用''''围绕'%s',当我开始在python中执行SQL时,我遇到了同样的问题^^ – Matthew
也许最好使用下面的代码:http://stackoverflow.com/questions/18231657/python -sqlite3-force-to-bind-a-parameter-as-string 有?被用作绑定变量,并且不需要“' –