下面的python代码一般会将值插入mysql数据库。它检查我名单的长度 field_split
并生成一个变量字符串 var_string
. 我陷入困境的地方是我想修改这个来支持 ON DUPLICATE KEY UPDATE user=user_id_var
. 如果我正在构建一个长字符串,我会知道如何做到这一点,但无法找到一种方法,通过将两个值传递给 cursor.execute
.
var_string = ', '.join(['%s'] * len(field_split))
query_string = 'INSERT into ' + table_name
query_string = query_string + ' VALUES (%s);' % var_string #query_string = 'INSERT INTO tbl_rtp_GET_FBA_ESTIMATED_FBA_FEES_TXT_DATA VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s);'
cursor.execute(query_string, field_split)
db.commit()
1条答案
按热度按时间rn0zuynd1#
只需构造查询并将所有参数作为单个序列传递给
cursor.execute()
. 你也可以使用str.format()
要避免多个字符串串联(可能很慢),请执行以下操作: