Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / x64 + Microsoft.ACE.OLEDB.12.0 + DBF / 13 сообщений из 13, страница 1 из 1
17.04.2012, 07:14
    #37756444
Ares_ekb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
x64 + Microsoft.ACE.OLEDB.12.0 + DBF
Здравствуйте!

100500-я тема про импорт из dbf....

Так работает:
Код: sql
1.
2.
3.
select top 100 *
from OpenDataSource('Microsoft.ACE.OLEDB.12.0',
'Data Source=C:\eHealthProject\kladr\;Extended Properties=DBASE IV')...STREET



Так
Код: sql
1.
2.
3.
4.
select top 100 *
from OpenRowSet('Microsoft.ACE.OLEDB.12.0',
'Data Source=C:\eHealthProject\kladr\;Extended Properties=DBASE IV',
'SELECT * FROM STREET')

выдает ошибку:
OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "(null)" returned message "Could not find installable ISAM.".
Сообщение 7303, уровень 16, состояние 1, строка 1
Cannot initialize the data source object of OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "(null)".

И когда пытаюсь подключиться к такому связанному серверу:
Код: sql
1.
2.
3.
4.
5.
6.
EXEC  sp_addlinkedserver 
        @server = 'Kladr', 
        @provider = 'Microsoft.ACE.OLEDB.12.0',
        @srvproduct = '',
        @datasrc ='C:\eHealthProject\kladr\',
        @provstr = 'Extended Properties="DBASE IV"'

получаю ошибку:Cannot initialize the data source object of OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "Kladr".
OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "Kladr" returned message "Could not find installable ISAM.". (Microsoft SQL Server, ошибка: 7303)

WTF??? Что я делаю неправильно?
...
Рейтинг: 0 / 0
14.05.2012, 12:33
    #37792997
klimev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
x64 + Microsoft.ACE.OLEDB.12.0 + DBF
Нашел погуглив следующее решение.

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
--Сначала разрешения для драйвера
USE master
GO
EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1 
 
EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParameters', 1 

--Потом создаем линкед сервер
EXEC sp_addlinkedserver
   @server = 'dbf',
   @srvproduct=N'OLE DB Provider for ACE', 
   @provider = 'Microsoft.ACE.OLEDB.12.0',
   @datasrc = 'c:\kladr',
   @provstr = 'DBASE IV'


--Дополнительно надо настроить настройки безопасности одним из описанных ниже способов иначе будет ошибка 
/*
OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "dbf" returned message "Cannot start your application. The workgroup information file is missing or opened exclusively by another user.".
Msg 7399, Level 16, State 1, Line 1
The OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "dbf" reported an error. Authentication failed.
Msg 7303, Level 16, State 1, Line 1
Cannot initialize the data source object of OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "dbf".

Solution to this problem is very simple. Simply follow steps -
1.Open the Management Studio and navigate to Server Objects and then to Linked Server.
2.Right click on your Linked Server Name, and click on Properties.
3.Go to Security Page. Now for solving above problem you have 2 option, you can try any of the below 2 option.

A] Select the option “Be made without using a security context” by clicking on radio button.

OR

B] Select the last option “Be made using this security context ”.
As soon as click on the radio button before “Be made using this security context ”, the“Remote login” and “With password” text boxes become active to be filled in.
Now in the “Remote login”, enter Admin as the login user. Leave the password text box as blank.
Now just click on OK, and now can run the query against your linked server without any error.
*/
...
Рейтинг: 0 / 0
22.05.2012, 14:20
    #37805935
Ares_ekb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
x64 + Microsoft.ACE.OLEDB.12.0 + DBF
klimev,

спасибо! но, ничего не изменилось (
...
Рейтинг: 0 / 0
22.05.2012, 14:26
    #37805949
Ares_ekb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
x64 + Microsoft.ACE.OLEDB.12.0 + DBF
klimev,

ой, заработало! @provstr был неправильный! спасибо!
...
Рейтинг: 0 / 0
23.05.2012, 07:34
    #37807033
Ares_ekb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
x64 + Microsoft.ACE.OLEDB.12.0 + DBF
А как насчет индексов? ) Это возможно вообще? )
...
Рейтинг: 0 / 0
09.08.2012, 16:40
    #37910981
valerygolub
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
x64 + Microsoft.ACE.OLEDB.12.0 + DBF
А какой правильный? Провайдер нигде не документирован. Что надо написать в extended properties?
У меня не работает ни в какую. Говорит, что провайдер не инициализирован и плюс неопознанная ошибка.
И вообще, предназначен ли провайдер для работы с DBF. Вроде бы только Excel и Access?
...
Рейтинг: 0 / 0
10.08.2012, 18:47
    #37912703
Ares_ekb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
x64 + Microsoft.ACE.OLEDB.12.0 + DBF
valerygolub,

Extended Properties не нужны. То, что написано у klimev правильно: @provstr = 'DBASE IV' Но попробовать не могу, всё на работе. С dbf нормально работает, я КЛАДР подключал.
...
Рейтинг: 0 / 0
13.08.2012, 10:26
    #37914009
valerygolub
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
x64 + Microsoft.ACE.OLEDB.12.0 + DBF
Ares_ekb,
Я экспериментировал на Win7 32b. Для АСE выдается сообщение, что не удалось проинициализировать адаптер. При этом VFPOLEDB работает без проблем. Сегодня проверил на Windows Server 2008 64b - оказалось, и правда работает. Если кому интересно, скриншоты моих экспериментов прилагаются.
...
Рейтинг: 0 / 0
13.08.2012, 10:29
    #37914017
valerygolub
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
x64 + Microsoft.ACE.OLEDB.12.0 + DBF
Ares_ekb,

Скриншоты экспериментов.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
24.05.2018, 11:08
    #39649250
AR159
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
x64 + Microsoft.ACE.OLEDB.12.0 + DBF
Апну ка я эту тему, ибо идеи кончились...

Ситуация аналогична ТС:
UNC пути не хочет
Код: sql
1.
2.
SELECT * FROM OPENDATASOURCE('Microsoft.ace.OLEDB.12.0',
'Data Source=\\Share\Folder;Extended Properties=dBASE IV')...[Book]



Локальный диск хочет, может, практикует:
Код: sql
1.
2.
SELECT * FROM OPENDATASOURCE('Microsoft.ace.OLEDB.12.0',
'Data Source=D:\Folder;Extended Properties=dBASE IV')...[Book]



Задание Агентом не хочет:
Код: sql
1.
2.
3.
insert into [Book] (row)
SELECT row FROM OPENDATASOURCE('Microsoft.ace.OLEDB.12.0',
'Data Source=D:\Folder;Extended Properties=dBASE IV')...[Book]


ошибка
авторВыполняется от имени пользователя: NT SERVICE\SQLSERVERAGENT.Не удалось проинициализировать объект источника данных поставщика OLE DB "Microsoft.ace.OLEDB.12.0" для связанного сервера "(null)". [SQLSTATE 42000] (Ошибка 7303) Поставщик OLE DB "Microsoft.ace.OLEDB.12.0" для связанного сервера "(null)" вернул сообщение "Неопознанная ошибка". [SQLSTATE 01000] (Ошибка 7412). Шаг завершился с ошибкой.
параметры установлены:
авторПараметр конфигурации "show advanced options" изменен с 1 на 1. Выполните инструкцию RECONFIGURE для установки.
Параметр конфигурации "xp_cmdshell" изменен с 1 на 1. Выполните инструкцию RECONFIGURE для установки.
владелец задания - sa
чем рогатый не шутит - добавил [NT SERVICE\SQLSERVERAGENT] в db_owner Базы с целевой таблицей

LS по образу и подобию 12549158 завел - такая же история:
Код: sql
1.
SELECT row FROM [dbf]...[Book]

работает, в Задании Агента не работает с точно такой же ошибкой как и с использованием [OPENDATASOURCE].

Я понимаю что ошибка на 99.1% в доступе, но где я еще не установил доступ я не имею ни малейшего представления...
...
Рейтинг: 0 / 0
24.05.2018, 11:16
    #39649258
AR159
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
x64 + Microsoft.ACE.OLEDB.12.0 + DBF
Как шаг задания следующий код выполняется без проблем, доступ к папке у [NT SERVICE\SQLSERVERAGENT] соответственно есть.
Код: sql
1.
EXEC master..xp_cmdshell 'dir D:\SQLDatabase'
...
Рейтинг: 0 / 0
10.06.2018, 14:01
    #39659258
lisischko
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
x64 + Microsoft.ACE.OLEDB.12.0 + DBF
AR159,

Здравствуйте. Попробуйте дать полные права на папку C:\Users\MSSQLSERVER\AppData\Local\Temp\
пользователю SQLSERVERAGENT.
...
Рейтинг: 0 / 0
01.08.2018, 10:57
    #39681894
AR159
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
x64 + Microsoft.ACE.OLEDB.12.0 + DBF
lisischko, прошу прощения за мое отсутствие. так и не победил вражину. написал на # приблуду и зашедулил. проблема осталась открытой но решение есть с костылём :( некрасиво
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / x64 + Microsoft.ACE.OLEDB.12.0 + DBF / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]