我需要在一个查询中插入多行(行数不是常数),因此我需要执行如下查询:
插入t(a,b)值(1,2)、(3,4)、(5,6);
我知道的唯一方法是
args=[(1,2)、(3,4)、(5,6)]
args_str=',join(args中x的cursor.mogrify(“%s”,(x,))
cursor.execute(“插入t(a,b)值”+args_str)
但是我想要一些更简单的方法
我建立了一个程序,可以在另一个城市的服务器上插入多行代码
我发现使用这种方法比executemany快10倍左右。在我的例子中,tup是一个包含大约2000行的元组。使用此方法大约需要10秒:
args_str=','。连接(当前mogrify((%s,%s,%s,%s,%s,%s)”,x)表示tup中的x)
当前执行(“插入表值”+args\u str)
使用此方法时,需要2分钟:
当前执行方式(“插入表值(%s,%s,%s,%s,%s,%s,%s)”,tup)