Не удалось получить данные из MS Access - PullRequest
0 голосов
/ 12 июля 2020

Я использую P C с Windows 10 64 бит в качестве ОС, Visual Studio 2012, SQL Server 2012 64 бит, Microsoft Office 2016. Я запускаю этот скрипт для получения данных из файла MS Access

SELECT DISTINCT UserId,CheckTime
FROM            OPENROWSET('Microsoft.ACE.OLEDB.12.0','D:\att2000.mdb';'admin';'',CheckInOut)

Перед запуском этого сценария я установил Microsoft Database Engine 2016, затем запустил несколько сценариев

   EXEC sp_configure 'show advanced options', 1
   RECONFIGURE
   GO
   EXEC sp_configure 'ad hoc distributed queries', 1
   RECONFIGURE
   GO

и этот

   USE [master]
   GO

   EXEC master . dbo. sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0' , N'AllowInProcess' , 1
   GO

   EXEC master . dbo. sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0' , N'DynamicParameters' , 1
   GO

Затем я установил учетную запись службы msqlserver в локальную учетную запись, после чего я могу получать данные из MS Access. Но иногда я получаю эту ошибку

Произошла ошибка транспортного уровня при получении результатов с сервера. (поставщик: поставщик общей памяти, ошибка: 0 - канал был закрыт.)

Я не могу подключиться к ядру базы данных и должен перезапустить SQL Сервер, я могу выполнить запрос к другим таблицам в SQL Сервер как обычно, но для этого конкретного сценария для получения данных из MS Access он не работает, и я получил эту ошибку. Затем я заметил, что «SQL Server Configuration Manager» исчез из списка программ. Пытался поискать, но не нашел.

1 Ответ

0 голосов
/ 12 июля 2020

Добавить SQL Сервер конфигурации сервера, как показано ниже:

1 - Пуск -> Выполнить -> мм c .exe 2 - В строке меню -> Файл -> Добавить / удалить оснастку ( или CTRL + M) 3 - Добавьте SQL Диспетчер конфигурации сервера и нажмите ОК

Попробуйте перезапустить службы и сообщите мне, если проблема не исчезнет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...