繁体   English   中英

从Python中的键/值对自动生成INSERT查询

[英]Automatically generate INSERT query from key/value pairs in Python

如何从Python字典自动创建MySQL插入语句?

file_info['filename'] = 'image.jpg'
file_info['size'] = 1682
file_info['id'] = 'a4Fabaz125'

现在,我手动指定每个值:

query = """INSERT INTO files
           (filename, size, id)
            VALUES (%s, %s, %s)""",
            (file_info['filename'], file_info['size'], file_info['id'])

但是,是否有一种方法可以根据第一部分中指定的键值对自动生成insert语句? 这将使添加其他键变得更加容易。

只要与@MarcB所说的表中的字段存在1:1对应关系:

file_info={}
file_info['filename'] = 'image.jpg'
file_info['size'] = 1682
file_info['id'] = 'a4Fabaz125'

fields = ', '.join(file_info)
values = ', '.join(str(x) for x in file_info.values())
print fields
print values
# size, id, filename
# 1682, a4Fabaz125, image.jpg

query = "INSERT INTO files (" + fields + ") VALUES (" + values + ");"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM