首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于Server和SQLGetData限制的ODBC驱动程序11

用于Server和SQLGetData限制的ODBC驱动程序11
EN

Stack Overflow用户
提问于 2016-01-29 20:39:19
回答 1查看 780关注 0票数 4

SQLGetData函数引用解释了API的以下一般限制:

如果驱动程序不支持SQLGetData的扩展,则该函数只能返回数字大于上一个绑定列的未绑定列的数据。此外,在一行数据中,每次调用SQLGetData时,SQLGetData参数的值必须大于或等于上一次调用中的Col_or_Param_Num值;也就是说,必须以增加列号的顺序检索数据。

ODBC实现细节文章上的SQLGetData添加了特定于Server本机客户端驱动程序的信息:

Server本机客户端ODBC驱动程序不支持使用SQLGetData以随机列顺序检索数据。使用SQLGetData处理的所有未绑定列必须具有比结果集中绑定列更高的列序号。

此列排序限制是否适用于新的和推荐的用于Server的Microsoft驱动程序

当前用于Server版本的ODBC驱动程序11和即将发布的Server版本ODBC驱动程序13 (预览)之间是否存在这种行为上的区别?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-22 13:16:47

所有当前Microsoft驱动程序都有列排序限制。

您可以通过调用SQLGetInfo ODBC函数来测试代码中的驱动程序功能。

Server的ODBC 17返回以下内容:

代码语言:javascript
复制
SQL_GETDATA_EXTENSIONS:
        SQL_GD_ANY_COLUMN false
        SQL_GD_ANY_ORDER false

Server的ODBC驱动程序13返回以下内容:

代码语言:javascript
复制
SQL_GETDATA_EXTENSIONS:
        SQL_GD_ANY_COLUMN false
        SQL_GD_ANY_ORDER false

Server本机客户端10.0返回以下内容:

代码语言:javascript
复制
SQL_GETDATA_EXTENSIONS:
        SQL_GD_ANY_COLUMN false
        SQL_GD_ANY_ORDER false
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35093643

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档