Я установил Office 2010 64 бит в Windows 7 64 бит. В Windows 7 также установлен SQL Server 2008.Как узнать причину разрешения поставщика OLE на SQL Server?
Затем я пытаюсь использовать Microsoft.ACE.OLEDB.12.0
для доступа к данным из файла excel с T-SQL.
Стараюсь T-SQL в SQL Server Mgmt Studio, со следующими вид запроса:
SELECT *
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;Database=C:\Temp\book1.xlsx;', 'SELECT * FROM [Sheet1$]')
Если я начинаю SQL Server Mgmt Studio, с 'Запуск от имени администратора', это нормально. Я могу получить/вставить данные из/в файл Excel.
Если я начну Mgmt Studio, непосредственно (с моей учетной записи AD), я получаю ошибку, как:
OLE DB провайдер "Microsoft.ACE.OLEDB.12.0" для связанного сервера "(NULL)" возвращается сообщение «Unspecified error».
Msg 7303, Level 16, State 1, Line 1
Невозможно инициализировать объект источника данных поставщика OLE DB «Microsoft.ACE.OLEDB.12.0» для связанного сервера «(null)».
но на самом деле, моя учетная запись также является учетной записью администратора (она находится в группе локального администратора и группе администрирования AD).
Поскольку мне нужно запустить T-SQL, как OpenRowSet
в коде, не знаете, как решить эту проблему.
Похоже, что OpenRowSet для этого случая подходит только для локального администратора для запуска MSSM.
Я пытаюсь запустить MSSM с другого компьютера и получил ту же ошибку, что и выше.
Спасибо. Пробовал. Получено такое же сообщение об ошибке. – KentZhou