SQL args的动态长度

时间:2014-01-19 21:56:28

标签: python mysql sql

我有以下内容:

sql = 'INSERT INTO home_title VALUES (%s, %s, %s, %s, %s)'

但是,参数的长度是57.如何基于乘以57动态创建(%s,%s,...)?

2 个答案:

答案 0 :(得分:4)

您可以使用以下命令生成它们:

sql = 'INSERT INTO home_title VALUES ({})'.format(', '.join(['%s'] * 57))

这会用逗号和空格插入57个'%s'个字符串。

参数数量较少的演示:

>>> 'INSERT INTO home_title VALUES ({})'.format(', '.join(['%s'] * 5))
'INSERT INTO home_title VALUES (%s, %s, %s, %s, %s)'

答案 1 :(得分:0)

试试这个:

", ".join(["%s"] * 57)