У меня есть проект служб аналитики SQL Server 2008. В представлении источника данных у меня есть именованный запрос, который ссылается на один источник данных, содержащий три таблицы. Проект успешно обрабатывается, и куб можно просматривать.
Недавно я добавил второй источник данных в представление источника данных и связал таблицу с исходным именованным запросом.
Когда я пытаюсь обработать проект, я получаю сообщение:
Ошибка OLE DB: ошибка OLE DB или ODBC: поставщик OLE DB «SQLNCLI10.1» не был зарегистрирован .; 42000.
Строка подключения для обоих источников данных использует SQLNCLI10.1.
SQL Server "Родной" Драйвер OLE DB, известный как «SQLNCLI10», не поставляется с Windows. Он поставляется с SQL Server 2008.
Это означает, что вам придется вручную установить его на машину, которая хочет подключиться к базе данных.
Другой OLE DB провайдеры для SQL Server:
SQLOLEDB
: Поставляется со всеми версиями Windows.SQLNCLI
: Поставляется с SQL Server 2005; должен быть установлен вручную на клиентских машинах (не рекомендуется)SQLNCLI10
: Поставляется с SQL Server 2008; должен быть установлен вручную на клиентских машинах (не рекомендуется)SQLNCLI11
: Поставляется с SQL Server 2012; должен быть установлен вручную на клиентских машинах (не рекомендуется)MSOLEDBSQL
: Поставляется с SQL Server 2017 и новее; должны быть вручную установлены на клиентских машинах. Поддерживает SQL Server 2005 и новее.Какая строка подключения используется для подключения к источнику данных, она должна выглядеть примерно так: Provider = SQLNCLI10.1; Integrated Security = ""; Persist Security Info = False; User ID = sa; Initial Catalog = AdventureWorksDW; Data Source = MyServer; Исходное имя файла = ""; SPN сервера = ""
SQLNCLI10.1 предназначен для SQL 2008 и более поздних версий, вы также можете проверить и загрузить из пакета функций SQL 2008 R2 и переустановить на сервере. Итак, вы можете попробовать отредактировать источники данных для базы данных и переключиться с поставщика SQLNCLI.1 на поставщика SQLNCLI10.1 Native Client.