我试图了解要调用哪些ODBC函数以及如何调用 它们是为了批量获取行或批量插入行(使用绑定变量而不仅仅是插入语句数组的插入)。
我可以按顺序调用这些函数一次获取一行
SQLBindParameter
SQLExecute
SQLFetch
另外,如果进行插入/更新,我可以通过调用这些函数一次一行
SQLBindParameter
SQLExecute
我不知道的是我需要在这些调用中更改以便:
1)批量获取行,例如每批150行
2)每个SQLExcecute调用插入几行,例如每次通话150行
简短包含的示例(不一定是可编译的,因为ODBC编程往往很长..所以忽略设置/初始化,忽略错误检查)演示如何完成这将有所帮助。或指向可以理解的开源代码的指针
答案 0 :(得分:2)
以下文章将介绍如何一次性发送参数行:
http://www.easysoft.com/products/data_access/odbc_odbc_bridge/performance_white_paper.html#3_1_2
基本上,您需要搜索SQLSetStmtAttr和SQL_ATTR_PARAMSET_SIZE。
要一次性获取多行,请参阅http://www.easysoft.com/developer/languages/c/odbc-tutorial-fetching-results.html
搜索SQL_ATTR_ROW_ARRAY_SIZE。
答案 1 :(得分:2)
有两个自包含的如何在此站点上执行数组绑定的示例
http://msdn.microsoft.com/en-us/library/ms709287(v=vs.85).aspx
此外,DB2客户端附带了几个示例代码,其中一些示例代码显示了如何对插入和选择进行数组绑定
答案 2 :(得分:1)
以下是来自IBM Developerworks的优秀文章,可能会回答您关于ODBC架构的一些问题:
ODBC programming using Apache Derby(可通过Wayback Machine获得)
使用ODBC连接优化网络流量的主要“技巧”之一是您定义光标的方式:
http://technet.microsoft.com/en-us/library/ms131453.aspx
'希望有所帮助.. PSM