带变量的Python Mysqldb更新操作

带变量的Python Mysqldb更新操作,python,mysql,mysql-python,Python,Mysql,Mysql Python,我有一个(也许很简单)问题,但我自己找不到答案 数据库包括链接。其中包括数字。 现在,我想在一个单独的列“nummer”中插入包含在每个链接中的数字 下面是一个数字 现在我想在几个数字上使用for循环,从所有链接中提取数字并将其写入“numer”字段 如何使用%i或%d进行修改 提前感谢您的帮助 import MySQLdb connection = MySQLdb.connect( host="192.168.0.101", db='xxxxxxx', user="x

我有一个(也许很简单)问题,但我自己找不到答案

数据库包括链接。其中包括数字。 现在,我想在一个单独的列“nummer”中插入包含在每个链接中的数字

下面是一个数字

现在我想在几个数字上使用for循环,从所有链接中提取数字并将其写入“numer”字段

如何使用%i或%d进行修改

提前感谢您的帮助

import MySQLdb

connection = MySQLdb.connect(
    host="192.168.0.101",
    db='xxxxxxx',
    user="xxxxxxx", passwd="xxxxxxx"
    )
connection.apilevel = "2.0"
connection.threadsafety = 2
connection.paramstyle = "format" 

cursor=connection.cursor()

sql="UPDATE analysen SET Nummer = 247687  WHERE `Link` like '%247687%'"  
cursor.execute(sql)
connection.commit()

要对多个数字进行for循环,只需对n个数字执行

唯一棘手的一点是如何参数化类似的查询。方法是将一个普通的
%s
参数放入查询中,然后将参数值包装成
%
字符。因此:

sql = "UPDATE analysen SET Nummer = %s WHERE Link like %s"
for n in numbers:
    cursor.execute(sql, [n, '%{}%'.format(n)])
或:


要对多个数字进行for循环,只需对n个数字执行

唯一棘手的一点是如何参数化类似的查询。方法是将一个普通的
%s
参数放入查询中,然后将参数值包装成
%
字符。因此:

sql = "UPDATE analysen SET Nummer = %s WHERE Link like %s"
for n in numbers:
    cursor.execute(sql, [n, '%{}%'.format(n)])
或:


非常感谢你的帮助!这正是我需要的!非常感谢你的帮助!这正是我需要的!