executemany()
功能
该函数是SQL语句的批量执行,用法和execute()类似,区别是executemany()执行SQL时是用preparestatment。该函数在执行SQL语句前会预处理,效率高于execute()。
参数
- SQL语句。
- 若SQL语句存在参数,需传入参数元组对象。
返回值
无。
使用说明
- 该函数支持接收多组参数。
- 其他使用方式参考execute函数。
- 若绑定参数有大对象,将其数据读取存储于Python对象中,再进行绑定参数;导出大对象也是如此,接口返回对象数据,用户需要创建文件句柄,对象数据写入文件句柄中,详细示例参考第六章。
- 该函数不能执行多结果集SQL语句。
代码示例
conn = xgcondb.connect(host="127.0.0.1", port="5138", database="SYSTEM", user="SYSDBA", password="SYSDBA")
cur = conn.cursor()
cur.execute("create table test(a int,b varchar,c date,d varchar,numeric(8,4) );")
rows=((4,'xugu','xugu','2017-05-26','12.5','12323423.3432'),('4','xugu','xugu','2017-05-26','12.5','12323423.3432'))
cur.executemany(sql,rows)
cur.executemany("select * from dual;")
cur.executemany(sql,(5,'xugu','ouguan','2017-07-27',112.5,12323423.3432))
cur.close()
conn.close()