Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Как сделать Linked server сетевой Access базе  [new]
Shamanus
Member

Откуда: мы пришли, кто мы, куда идем?
Сообщений: 6021
Блог
Имею Microsoft SQL Server Standard Edition 2008
Размещен он на Windows Server 2003

Мне необходимо получить как Linked Server базу MDB расположенную в сети. Для того, чтобы джобом забирать оттуда всякие штуки дрюки, которые пользователи вносят в эту базу.

С локальными базами все просто
EXEC sp_addlinkedserver 'Test', 'Access','Microsoft.Jet.OLEDB.4.0', 'С:\temp\test.mdb'
EXEC sp_addlinkedsrvlogin 'Test', false, 'domain\user', 'Admin', NULL

Но это потому, что MSSQL стартует под пользователем SYSTEM.
Когда пытаюсь проделать тот же фокус с сетевой базой, ничего не выходит. Оно и ясно - пользователь систем сеть не видит и не имеет туда прав. Дать ему права тоже нельзя, вне моей компетенции.

Собственно вопрос каким образом получить эту базу из сети.

Я рассматривал как вариант создать на сервере системны DSN к MDB файлу и указать его в качестве источника. Но этот фокус также не проходит, видимо потому что при обращении к системному DSN я имею те же права юзера System.

Я на сервере имею учетку и имею небольшие администраторские права, так что какие то вещи могу (например создать системный дсн, задания). Но стартовать сервер под мной не вариант, потому что у нас регулярно обновляется системный пароль, придется регулярно лезть пересохранять его.

Также есть аккаунт без админских прав, но с возможностью выхода в сеть и без регулярной смены пароля. Но серверу нужны админские права.

Как мне имея такой коктейль попробовать разрулить ситуацию. Крайний вариант создать на сервере задание на копирование баз из сети в локалку, а потом читать её. Но способ крайне некомильфошный, ввиду своей ненадежности. Я даже версию файла не узнаю, как же следить выполнилось задание али нет. Хочется прямого варианта.

Может подключить под системом сетевой диск от пользователя имеющего доступ в сеть. Но как залогиниться на сервере под системом? Знаю только как под локальным админом подключить сетевой диск с правами другого юзера.
12 июл 11, 20:01    [10964091]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
Shamanus
Member

Откуда: мы пришли, кто мы, куда идем?
Сообщений: 6021
Блог
ап
13 июл 11, 07:59    [10965366]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
studieren
Member

Откуда: Tashkent, Uzbekistan
Сообщений: 2845
Shamanus
...
Мне необходимо получить как Linked Server базу MDB расположенную в сети. Для того, чтобы джобом забирать оттуда всякие штуки дрюки, которые пользователи вносят в эту базу.
...


А не проще ли в сиквеле создать таблицу, а в MS Access линковать к этой таблице? Пользователи находясь в MS Access будут вводить "всякие штуки дрюки", а данные реально будут находиться на сервере. И не надо будет никакого Linked Server!
Не вариант?
13 июл 11, 08:28    [10965404]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
Shamanus
Member

Откуда: мы пришли, кто мы, куда идем?
Сообщений: 6021
Блог
studieren,

спасибо за ответ.
К сожалению мне кажется, что не вариант, но возможно у меня пробел в знаниях и на самом деле это можно реализовать.

К аксессу имеет доступ уйма людей. Я их всех даже незнаю, им для доступа в аксесс нужен просто доступ в сетевую папку. Доступ в папку разруливается отделом системного администрирования по запросу минуя владельца базы MSSQL

Если они через "морду" аксесса будут иметь доступ к сиквелу, то им всем придется давать учетку на сиквеле. Как создать универсальную учетку на сиквеле и под ней из базы аксесс получить доступ на сервер я незнаю. Возможно это было бы решением.
13 июл 11, 08:48    [10965464]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
Shamanus
Member

Откуда: мы пришли, кто мы, куда идем?
Сообщений: 6021
Блог
Shamanus
studieren,

спасибо за ответ.
К сожалению мне кажется, что не вариант, но возможно у меня пробел в знаниях и на самом деле это можно реализовать.

К аксессу имеет доступ уйма людей. Я их всех даже незнаю, им для доступа в аксесс нужен просто доступ в сетевую папку. Доступ в папку разруливается отделом системного администрирования по запросу минуя владельца базы MSSQL

Если они через "морду" аксесса будут иметь доступ к сиквелу, то им всем придется давать учетку на сиквеле. Как создать универсальную учетку на сиквеле и под ней из базы аксесс получить доступ на сервер я незнаю. Возможно это было бы решением.

в смысле я знаю как создать учетку, но как коннектиться именно под ней из MS Access это для меня вопрос.
13 июл 11, 08:49    [10965467]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
studieren
Member

Откуда: Tashkent, Uzbekistan
Сообщений: 2845
Shamanus
...
в смысле я знаю как создать учетку, но как коннектиться именно под ней из MS Access это для меня вопрос.


Разве это проблема? Нет проще простого. Создайте сначала таблицу на сиквеле (условно назову просто "Table1"), создайте учётку (скажем "UsualUser"), создайте DSN, чтобы Access мог достучаться на сиквел, а потом на стороне Access создайте такой простой запрос:
SELECT * FROM [ODBC;DSN=НазваниеDSN;Database=НазваниеБД;UID=UsualUser;PWD=123456].dbo.Table1 AS T
Обязательно Ваша таблица "Table1" должна иметь первичный ключ или хотя бы уникальный индекс. Иначе на стороне Access таблица станет не обновляемой.
13 июл 11, 09:10    [10965529]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
Shamanus
Member

Откуда: мы пришли, кто мы, куда идем?
Сообщений: 6021
Блог
studieren
Shamanus
...
в смысле я знаю как создать учетку, но как коннектиться именно под ней из MS Access это для меня вопрос.


Разве это проблема? Нет проще простого. Создайте сначала таблицу на сиквеле (условно назову просто "Table1"), создайте учётку (скажем "UsualUser"), создайте DSN, чтобы Access мог достучаться на сиквел, а потом на стороне Access создайте такой простой запрос:
SELECT * FROM [ODBC;DSN=НазваниеDSN;Database=НазваниеБД;UID=UsualUser;PWD=123456].dbo.Table1 AS T
Обязательно Ваша таблица "Table1" должна иметь первичный ключ или хотя бы уникальный индекс. Иначе на стороне Access таблица станет не обновляемой.

Где создать DSN? На сервере?
13 июл 11, 09:11    [10965534]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
aleks2
Guest
Мож ознакомиться с прогрессом?
ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.en/scsql9/html/c8df6022-e0b4-46b8-9670-3f86938d3177.htm
Credentials
и не париться?

Или применить старую хоть и замороченную технологию
ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.en/udb9/html/9e302c29-639d-4509-ba1e-cf452582c5c3.htm
Delegation?
13 июл 11, 09:12    [10965547]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
Shamanus
Member

Откуда: мы пришли, кто мы, куда идем?
Сообщений: 6021
Блог
aleks2
Мож ознакомиться с прогрессом?
ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.en/scsql9/html/c8df6022-e0b4-46b8-9670-3f86938d3177.htm
Credentials
и не париться?

Или применить старую хоть и замороченную технологию
ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.en/udb9/html/9e302c29-639d-4509-ba1e-cf452582c5c3.htm
Delegation?


Из описания технологий я так понял, что предлагается переназначить внешние доменные учетки прошедшие авторизацию в домене на виртуальную учетку на сервере. Работая с правами только этой учетки.

Но в этом сложность, мне нужно будет вести самому учет всех этих юзеров для этого мандата. Т.е. при появлении нового доменного псевдонима, желающего подключиться, мне нужно будет прописать его к этому мандату. Так? или я неверно понял?
13 июл 11, 09:34    [10965637]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
ё
Guest
Shamanus
Также есть аккаунт без админских прав, но с возможностью выхода в сеть и без регулярной смены пароля.

а из под этого аккаунта, OPENROWSET к мдб-шнику, можете сделать ?
13 июл 11, 09:50    [10965701]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
ё
Guest
Shamanus
studieren
пропущено...


Разве это проблема? Нет проще простого. Создайте сначала таблицу на сиквеле (условно назову просто "Table1"), создайте учётку (скажем "UsualUser"), создайте DSN, чтобы Access мог достучаться на сиквел, а потом на стороне Access создайте такой простой запрос:
SELECT * FROM [ODBC;DSN=НазваниеDSN;Database=НазваниеБД;UID=UsualUser;PWD=123456].dbo.Table1 AS T
Обязательно Ваша таблица "Table1" должна иметь первичный ключ или хотя бы уникальный индекс. Иначе на стороне Access таблица станет не обновляемой.

Где создать DSN? На сервере?

DSN нужен там, где будет выполнятся запрос,

но его можно вообще не создавать
просто, всё что нужно - вписать в "строку подключения"
типа
SELECT * FROM [ODBC;DRIVER=SQL Server;SERVER=MyServ;Database=НазваниеБД;UID=UsualUser;PWD=123456].dbo.Table1 AS T

но это вроде бы не то, что нужно, в принципе
это пригодилось бы, если бы вы со стороны Акцесса что-то делали, имхо...
13 июл 11, 10:03    [10965757]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
Shamanus
Member

Откуда: мы пришли, кто мы, куда идем?
Сообщений: 6021
Блог
ё
Shamanus
Также есть аккаунт без админских прав, но с возможностью выхода в сеть и без регулярной смены пароля.

а из под этого аккаунта, OPENROWSET к мдб-шнику, можете сделать ?

попробовал
если локально все успешно
если не локально
автор
Поставщик OLE DB "Microsoft.Jet.OLEDB.4.0" для связанного сервера "(null)" вернул сообщение "Строка 'x:\test.mdb' задает ошибочный путь. Проверьте, что путь задан правильно и имеется подключение к серверу, на котором находятся файлы.".
13 июл 11, 10:21    [10965850]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
ё
Guest
Shamanus
автор
Поставщик OLE DB "Microsoft.Jet.OLEDB.4.0" для связанного сервера "(null)" вернул сообщение "Строка 'x:\test.mdb' задает ошибочный путь. Проверьте, что путь задан правильно и имеется подключение к серверу, на котором находятся файлы.".

Вы эту папку - сетевым диском "подцепили" ?
сделайте через UNC-путь
13 июл 11, 10:25    [10965877]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
Shamanus
Member

Откуда: мы пришли, кто мы, куда идем?
Сообщений: 6021
Блог
ё
Shamanus
пропущено...

Где создать DSN? На сервере?

DSN нужен там, где будет выполнятся запрос,

но его можно вообще не создавать
просто, всё что нужно - вписать в "строку подключения"
типа
SELECT * FROM [ODBC;DRIVER=SQL Server;SERVER=MyServ;Database=НазваниеБД;UID=UsualUser;PWD=123456].dbo.Table1 AS T

но это вроде бы не то, что нужно, в принципе
это пригодилось бы, если бы вы со стороны Акцесса что-то делали, имхо...
Вы полностью правы.
Я поэтому и уточнил где создавать ДСН, если на каждом клиенте то вариант не подходит.

Пока мне кажется, что задача станет существенно проще если я сделаю так

Залогинюсь под пользователем систем
Создам под ним сетевой диск от аккаунта, который не требует смены пароля с автоматическим подключением этого сетевого диска при логине
Систем будет уверен, что диск X это локальный диск и все будет предельно просто.

Но мне кажется, что логин под системом сама по себе бредовая фраза. Поэтому начал рыть в сторону системных ODBC, но там тоже не густо.
По ходу придется решать через назначенные задания копирование файла на сервер.
13 июл 11, 10:43    [10966014]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
Shamanus
Member

Откуда: мы пришли, кто мы, куда идем?
Сообщений: 6021
Блог
ё
Shamanus
пропущено...

Вы эту папку - сетевым диском "подцепили" ?
сделайте через UNC-путь


сделал через UNC, результат тот же, т.к. NT AUTHORITY\SYSTEM не имеет доступа в сеть
13 июл 11, 10:47    [10966041]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
ё
Guest
ё
Shamanus
Также есть аккаунт без админских прав, но с возможностью выхода в сеть и без регулярной смены пароля.

а из под этого аккаунта, OPENROWSET к мдб-шнику, можете сделать ?
13 июл 11, 10:52    [10966083]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
Glory
Member

Откуда:
Сообщений: 104751
Shamanus
Также есть аккаунт без админских прав, но с возможностью выхода в сеть и без регулярной смены пароля. Но серверу нужны админские права.

Для этого аккаунта делаете SQL Server Agent proxy accounts и создаете job, который будет вам копировать сетевой файл в локальны
13 июл 11, 10:55    [10966102]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
aleks2
Guest
Shamanus
ё
пропущено...

Вы эту папку - сетевым диском "подцепили" ?
сделайте через UNC-путь


сделал через UNC, результат тот же, т.к. NT AUTHORITY\SYSTEM не имеет доступа в сеть


1.Экспериментатор!
Ну не поняли вы прелести Delegation и простоты Credentials.
Дык прочтите хоть хелп к sp_addlinkedsrvlogin и укажите ПРАВИЛЬНЫЕ учетные данные.

2. И не порите чушь. NT AUTHORITY\SYSTEM имеет доступа в сеть. ИМЕЕТ.
13 июл 11, 10:56    [10966115]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
Shamanus
Member

Откуда: мы пришли, кто мы, куда идем?
Сообщений: 6021
Блог
ё
ё
пропущено...

а из под этого аккаунта, OPENROWSET к мдб-шнику, можете сделать ?

У меня есть доступ в сеть
У меня есть аккаунт на серверной машине
У меня есть аккаунт на MSSQL сервере
Я коннекчусь с локальной машины через менеджмент студию к серверу под своим доменным логином и паролем
Я делаю openrowset под этим соединением т.е. под своим юзером

Но я же цепляюсь к службе (Служба MSSQL сервер), которая крутится на сервере
Эта служба стартует от имени SYSTEM.

Следовательно какой бы я не делал запрос или любой другой пользователь.
Исполнять этот запрос будет служба. А служба запущена от SYSTEM. Соответственно имеет права и доступы этого пользователя, а не моего аккаунта.
13 июл 11, 11:01    [10966145]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
Shamanus
Member

Откуда: мы пришли, кто мы, куда идем?
Сообщений: 6021
Блог
aleks2
Shamanus
пропущено...


сделал через UNC, результат тот же, т.к. NT AUTHORITY\SYSTEM не имеет доступа в сеть


1.Экспериментатор!
Ну не поняли вы прелести Delegation и простоты Credentials.
Дык прочтите хоть хелп к sp_addlinkedsrvlogin и укажите ПРАВИЛЬНЫЕ учетные данные.

2. И не порите чушь. NT AUTHORITY\SYSTEM имеет доступа в сеть. ИМЕЕТ.

Я не отрицаю что чего то мог не понять. Поэтому я у Вас и уточнил верно ли я понял.

Хелп перерыл вдоль и поперек задолго до поднятия этой темы. Что значит верные учетные данные sp_addlinkedsrvlogin. Я же привел строку как я его юзаю. Если ошибка для Вас очевидна, приведите вариант верной строки, я за этой помощью сюда и пришел.
13 июл 11, 11:05    [10966174]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
studieren
Member

Откуда: Tashkent, Uzbekistan
Сообщений: 2845
Shamanus,

И тем не менее на мой взгляд лучшее решение, это на сервере иметь "под рукой" все необходимые данные. Если у Вас часто меняются учётные записи, то каждый раз менять параметры Linked Server? Зачем?.
Кроме того, Вы ещё и триггер можете повесить на Вашу таблицу.
В принципе на клиентской машине можете и не создавать DSN как указал "Ё".
Попробовали вот этот вариант?
SELECT * FROM [ODBC;DRIVER=SQL Server;SERVER=MyServ;Database=НазваниеБД;UID=UsualUser;PWD=123456].dbo.Table1 AS T

Shamanus
...
Залогинюсь под пользователем систем
Создам под ним сетевой диск от аккаунта, который не требует смены пароля с автоматическим подключением этого сетевого диска при логине
Систем будет уверен, что диск X это локальный диск и все будет предельно просто.

Но мне кажется, что логин под системом сама по себе бредовая фраза. Поэтому начал рыть в сторону системных ODBC, но там тоже не густо.
По ходу придется решать через назначенные задания копирование файла на сервер.

Эйййй зачем так сложно? Создаёте простой логин и пользователь некой базы, которая находится на сиквеле. Этот логин пользователя будет иметь доступ только к 1 таблице и всё! На Access напишите простой вышеуказанный запрос. И всё!!! Никому никаких дополнительных доступов и ни каких дополнительных прав на сетевые ресурсы, копирование каких-то файлов не требуется вообще! Данные ведь изначально будут находится на сервере. Разве это НЕ "простое решение"?
Ведь Вы изначально хотели достучаться до Access ради каких-то данных, которые теперь будут на сервере.
А юзеры вообще ничего не заметят, если источником формы ввода укажите тот запрос.
13 июл 11, 11:12    [10966219]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
Shamanus
Member

Откуда: мы пришли, кто мы, куда идем?
Сообщений: 6021
Блог
aleks2
sp_addlinkedsrvlogin и укажите ПРАВИЛЬНЫЕ учетные данные.

вот пример из MSDN

MSDN
Б. Соединение указанного имени входа со связанным сервером с помощью других учетных данных

В следующем примере создается сопоставление, гарантирующее, что пользователь Windows Domain\Mary будет подключаться к связанному серверу Accounts с помощью имени входа MaryP и пароля d89q3w4u.

EXEC sp_addlinkedsrvlogin 'Accounts', 'false', 'Domain\Mary', 'MaryP', 'd89q3w4u'


как делаю я

EXEC sp_addlinkedserver 'Test', 'Access','Microsoft.Jet.OLEDB.4.0', '\\serverName\temp\test.mdb'
EXEC sp_addlinkedsrvlogin 'Test', 'false', 'domain\MyUser', 'Admin', NULL
не выходит

Пробую так
EXEC sp_addlinkedserver 'Test', 'Access','Microsoft.Jet.OLEDB.4.0', '\\serverName\temp\test.mdb'
EXEC sp_addlinkedsrvlogin 'Test', 'false', 'domain\MyUser', 'domain\MyUser', 'MyPassword'
тоже никак
13 июл 11, 11:17    [10966247]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
Shamanus
Member

Откуда: мы пришли, кто мы, куда идем?
Сообщений: 6021
Блог
studieren
Shamanus,

И тем не менее на мой взгляд лучшее решение, это на сервере иметь "под рукой" все необходимые данные. Если у Вас часто меняются учётные записи, то каждый раз менять параметры Linked Server? Зачем?.
Кроме того, Вы ещё и триггер можете повесить на Вашу таблицу.
В принципе на клиентской машине можете и не создавать DSN как указал "Ё".
Попробовали вот этот вариант?
SELECT * FROM [ODBC;DRIVER=SQL Server;SERVER=MyServ;Database=НазваниеБД;UID=UsualUser;PWD=123456].dbo.Table1 AS T

Shamanus
...
Залогинюсь под пользователем систем
Создам под ним сетевой диск от аккаунта, который не требует смены пароля с автоматическим подключением этого сетевого диска при логине
Систем будет уверен, что диск X это локальный диск и все будет предельно просто.

Но мне кажется, что логин под системом сама по себе бредовая фраза. Поэтому начал рыть в сторону системных ODBC, но там тоже не густо.
По ходу придется решать через назначенные задания копирование файла на сервер.

Эйййй зачем так сложно? Создаёте простой логин и пользователь некой базы, которая находится на сиквеле. Этот логин пользователя будет иметь доступ только к 1 таблице и всё! На Access напишите простой вышеуказанный запрос. И всё!!! Никому никаких дополнительных доступов и ни каких дополнительных прав на сетевые ресурсы, копирование каких-то файлов не требуется вообще! Данные ведь изначально будут находится на сервере. Разве это НЕ "простое решение"?
Ведь Вы изначально хотели достучаться до Access ради каких-то данных, которые теперь будут на сервере.
А юзеры вообще ничего не заметят, если источником формы ввода укажите тот запрос.


Я Вашу идею понял. Колдовать на стороне клиента еще не пробовал. И делать это все равно буду не я, а разработчики клиента.

Откладываю это вариант на последний потому, что это займет время у разработчиков. И потому что вариант когда я сам по своему графику забираю данные для меня проще.

Не придется ни с кем делить сетевой канал, согласовывать рестарты сервера и прочее. А триггкры и прочие плюшки данных на моей стороне мне не особо нужны.

Но за совет все равно спасибо.
13 июл 11, 11:29    [10966312]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
serkuzm
Member

Откуда:
Сообщений: 42
Shamanus,

А если попробовать сделать ссылку на машине с сиквел сервером на файл базы Access на сетевом диске? И создавать Linked Server уже на "локальный" файл Access-a.
Признаюсь, сам не пробовал, но как вариант может стоит попробовать.
13 июл 11, 11:43    [10966393]     Ответить | Цитировать Сообщить модератору
 Re: Как сделать Linked server сетевой Access базе  [new]
studieren
Member

Откуда: Tashkent, Uzbekistan
Сообщений: 2845
Shamanus
Я Вашу идею понял. Колдовать на стороне клиента еще не пробовал. И делать это все равно буду не я, а разработчики клиента.

Откладываю это вариант на последний потому, что это займет время у разработчиков. И потому что вариант когда я сам по своему графику забираю данные для меня проще.

Не придется ни с кем делить сетевой канал, согласовывать рестарты сервера и прочее. А триггкры и прочие плюшки данных на моей стороне мне не особо нужны.

Но за совет все равно спасибо.


Т.е. если я Вас правильно понял, то есть некий файл Access, который Вам не принадлежит и Вы "колдовать" над ним не можете. Но Вам нужно получать от туда информацию. Вы не можете создать Linked Server, ибо имеете проблемы с правами (часто меняются учётные записи).

Ну тогда предлагаю другой вариант.
Создаёте пустую базу в MS Access "по близости" к серверу (т.е. на той же машине, что и сервер установлен). В этом файле создаёте таблицу "Table1", линкованную через сеть в другую базу Access, где и находятся данные.
Теперь создадите Linked Server для новой базы, можете мастером пользоваться, а можете запускать скрипт. К примеру такой:
EXEC master.dbo.sp_addlinkedserver
	@server = N'TEST_ACCESS',
	@srvproduct=N'TEST_ACCESS',
	@provider=N'Microsoft.Jet.OLEDB.4.0',
	@datasrc=N'C:\НекаяПапка\НоваяБаза.mdb'

EXEC master.dbo.sp_addlinkedsrvlogin
	@rmtsrvname=N'TEST_ACCESS',
	@useself=N'True',
	@locallogin=NULL,
	@rmtuser=NULL,
	@rmtpassword=NULL;

Ну и теперь запускаете вот такой запрос на сервере и получаете нужные данные:
SELECT * FROM TEST_ACCESS...Table1;

Не вариант?
13 июл 11, 12:05    [10966513]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить