![OLE DB 提供程序“SQLNCLI10.1”尚未注册。;42000](https://linux22.com/image/510861/OLE%20DB%20%E6%8F%90%E4%BE%9B%E7%A8%8B%E5%BA%8F%E2%80%9CSQLNCLI10.1%E2%80%9D%E5%B0%9A%E6%9C%AA%E6%B3%A8%E5%86%8C%E3%80%82%EF%BC%9B42000.png)
我有一个 SQL Server 2008 Analysis Services 项目。在数据源视图中,我有一个命名查询,它引用包含三个表的单个数据源。该项目成功处理,并且可以浏览多维数据集。
我最近向数据源视图添加了第二个数据源,并将表链接到原始命名查询。
当我尝试处理该项目时,收到以下消息:
OLE DB 错误:OLE DB 或 ODBC 错误:OLE DB 提供程序“SQLNCLI10.1”尚未注册。;42000。
两个数据源的连接字符串均使用 SQLNCLI10.1
答案1
用于连接数据源的连接字符串是什么,它应该类似以下行:Provider=SQLNCLI10.1;Integrated Security="";Persist Security Info=False;User ID=sa;Initial Catalog=AdventureWorksDW;Data Source=MyServer;Initial File Name="";Server SPN=""
SQLNCLI10.1 适用于 SQL 2008 及更高版本,您也可以从 SQL 2008 R2 功能包中检查并下载,然后重新安装在服务器上。因此,您可以尝试编辑数据库的数据源,并从 SQLNCLI.1 提供程序切换到 SQLNCLI10.1 Native Client 提供程序。
答案2
SQL 服务器“本国的”称为“SQLNCLI10”的 OLE DB 驱动程序未随 Windows 一起提供。它随 SQL Server 2008 一起提供。
这意味着您必须手动将其安装在想要连接数据库的机器上。
其他OLEDBSQL Server 的提供程序:
SQLOLEDB
:随每个版本的 Windows 一起提供SQLNCLI
:随 SQL Server 2005 一起提供;必须手动安装在客户端计算机上(不建议)SQLNCLI10
:随 SQL Server 2008 一起提供;必须手动安装在客户端计算机上(不建议)SQLNCLI11
:随 SQL Server 2012 一起提供;必须手动安装在客户端计算机上(不建议)MSOLEDBSQL
:随 SQL Server 2017 及更新版本一起提供;必须手动安装在客户端计算机上。支持 SQL Server 2005 及更新版本。