Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/349.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python MySQL更新多列_Python_Mysql - Fatal编程技术网

Python MySQL更新多列

Python MySQL更新多列,python,mysql,Python,Mysql,我试图通过Python将几个通过ZeroMQ解析的变量放入MySQL 我已经能够通过执行以下操作打印这些变量: for i in json_msg["PropertyInfoMsg"]: print i.["PropertyType"] + ": " + i["PropertyValue"] 把它放到MySQL中,我想做一些如下的事情: db = MySQLdb.connect(host="localhost", user="user", passwd="pass", db="

我试图通过Python将几个通过ZeroMQ解析的变量放入MySQL

我已经能够通过执行以下操作打印这些变量:

for i in json_msg["PropertyInfoMsg"]:
        print i.["PropertyType"] + ": " + i["PropertyValue"]
把它放到MySQL中,我想做一些如下的事情:

db = MySQLdb.connect(host="localhost", user="user", passwd="pass", db="database")
cursor = db.cursor()
for i in json_msg["PropertyInfoMsg"]:
    cursor.execute("""UPDATE settings SET value=%s WHERE name=%s""" % (i.["PropertyType"], i["PropertyValue"]))
    db.commit()
    cursor.close()

虽然我在想也许有更好的方法?也许只需要一个字符串就可以一次更新所有内容?

要更新多少字段?一对夫妇不会是一个大问题,但如果你要做40或50个字段,那就是40或50个单独的更新,40-50个单独的索引更新-效率很低。@MarcB你会怎么做?可能创建一个带有
[类型,值]
的时态表?构建一个
更新。。。设置field1=val1,field2=val2,等等。
query.@MarcB在这种情况下不起作用,对于不同的
集合,您需要不同的
位置。我懂了。这是一个key=value表?然后是的。您将被困在单个更新查询中。要更新多少字段?一对夫妇不会是一个大问题,但如果你要做40或50个字段,那就是40或50个单独的更新,40-50个单独的索引更新-效率很低。@MarcB你会怎么做?可能创建一个带有
[类型,值]
的时态表?构建一个
更新。。。设置field1=val1,field2=val2,等等。
query.@MarcB在这种情况下不起作用,对于不同的
集合,您需要不同的
位置。我懂了。这是一个key=value表?然后是的。您将被困在单独的更新查询中。