Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server SQLNCLI已被弃用,但这仅适用于SQLNCLI OLEDB,还是也适用于SQLNCLI ODBC?_Sql Server_Odbc_Sqlncli - Fatal编程技术网

Sql server SQLNCLI已被弃用,但这仅适用于SQLNCLI OLEDB,还是也适用于SQLNCLI ODBC?

Sql server SQLNCLI已被弃用,但这仅适用于SQLNCLI OLEDB,还是也适用于SQLNCLI ODBC?,sql-server,odbc,sqlncli,Sql Server,Odbc,Sqlncli,我们有一个用C(不是C++)编写的应用程序,它使用sqlncli.h,特别是ODBC实现,而不是OLEDB SQL Server本机客户端(SQLNCLI)仍然不推荐使用,不建议将其用于新的开发工作。相反,请使用新的Microsoft OLE DB SQL Server驱动程序(MSOLEDBSQL),该驱动程序将使用最新的服务器功能进行更新 此引文链接到,该引文解释了如何使用MSOLEDBSQL构建应用程序,指出您应该: 要在现有应用程序中使用新的Microsoft OLE DB驱动程序,您

我们有一个用C(不是C++)编写的应用程序,它使用sqlncli.h,特别是ODBC实现,而不是OLEDB

SQL Server本机客户端(SQLNCLI)仍然不推荐使用,不建议将其用于新的开发工作。相反,请使用新的Microsoft OLE DB SQL Server驱动程序(MSOLEDBSQL),该驱动程序将使用最新的服务器功能进行更新

此引文链接到,该引文解释了如何使用MSOLEDBSQL构建应用程序,指出您应该:

  • 要在现有应用程序中使用新的Microsoft OLE DB驱动程序,您应该计划将连接字符串从SQLOLEDB或SQLNCLI转换为MSOLEDBSQL

  • 使用新标题(它链接到的文章)
  • 就这么简单,对吧?不太可能,因为我们已经尝试按照这些说明来实现新的头文件(msoledbsql.h),而且它似乎不支持来自sqlncli.h的旧数据类型,比如DBINT。因此,我认为在这一点上,弃用声明可能与ODBC无关。评论呢

    因此,在这个新版本中保持了与当前使用SNAC 11的应用程序的向后兼容性

    仅适用于OLEDB

    我的问题是,如果您使用的是SQLNCLI ODBC(而不是SQLNCLI OLEDB),那么它似乎实际上并没有被弃用。对吗?例如,不推荐警告存在于ODBC页面,但不存在于ODBC页面

    提前谢谢你的帮助

    如果您使用的是SQLNCLI ODBC(而不是SQLNCLI OLEDB),那么它似乎实际上并没有被弃用

    它已被弃用,但仍支持某些版本。当SQLNCLI中的SQL Server OleDB提供程序被弃用时,ODBC驱动程序的打包发生了变化,代码被移植到

    OleDb提供程序后来未被弃用,并生成了一个新的提供程序。但那是另一个故事


    因此,本质上,使用SNAC ODBC,您只需要使用旧版本的ODBC驱动程序,您应该在某个时候升级到新版本。

    Hi David。谢谢你的快速回复。为了澄清这一点,使用SNAC ODBC的Windows C解决方案只需将解决方案重新定位到较新的Windows SDK,因为该SDK是ODBC头的交付位置,然后切换连接字符串以使用较新的驱动程序,这是正确的说法吗。而SNAC OLEDB将遵循前面提到的文章来实现msoledbsql.h头?非常感谢。我知道有一个LinuxSQL驱动程序,但目前这是一组不同的问题。基本上是的。更改ODBC驱动程序只是一个小小的更改。切换到OleDb是一个大问题。