setinputsizes()
功能
此方法可以在调用execute() 、executemany()、callproc()、callfunc()之前使用,用于预定义数据库操作参数所需的内存区域。用户可视需求情况选择使用该方法。
参数
预定义的参数长度元组对象。
返回值
无。
使用说明
- 此方法用于设置参数缓存空间大小,用户可预先设置参数所需要的内存空间(尤其是字符串)。
- 此方法设置后,会一直影响后面 SQL 函数的执行,直到用户调用 clearsize() 方法清除本次设置。
- 参数设置内存空间,必须与当前插入的参数个数相同,且一一对应。
- 若绑定存储函数,需要在最后加入存储函数返回的参数大小。
代码示例
conn = xgcondb.connect(host="127.0.0.1", port="5138", database="SYSTEM", user="SYSDBA", password="SYSDBA")
cur = conn.cursor()
#-----设置存储过程的参数长度(三个参数)----------
cur.setinputsizes((200,4,8))
print(cur.execproc("test_proc",("xugu",24,65535)))
cur.clearsize() //清除上面设置的参数空间
#-----设置存储函数的参数长度(三个参数)----------
cur.setinputsizes((200,4,8,200))#最后一个参数是函数返回值的预定义大小
print(cur.execfunc("test_func",("xugu",24,65535)))
cur.clearsize() //清除上面设置的参数空间
cur.close()
conn.close()