Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 linked server. Ошибка 7303  [new]
aigr
Member

Откуда:
Сообщений: 61
Добрый день!
Пытаюсь подключить удаленный сервер c БД ClearScada как linked через ODBC. Подключение через ODBC настроено и работает, проверили, данные получили через Excel, там все в порядке.
select @@version
Microsoft SQL Server 2005 - 9.00.3042.00 (Intel X86)   Feb  9 2007 22:47:07   Copyright (c) 1988-2005 Microsoft Corporation  Standard Edition on Windows NT 5.2 (Build 3790: Service Pack 2) 
Подключаю следующим образом
EXEC sp_addlinkedserver 
@server = 'ClearScada', 
@srvproduct = '', 
@provider = 'MSDASQL', 
@provstr = 'Provider=MSDASQL.1;Password=pass;Persist Security Info=True;User ID=user;Data Source=clearscada' 
go
exec sp_addlinkedsrvlogin 'ClearScada', 'false', NULL, 'user', 'pass'
go
SELECT * FROM OPENQUERY(ClearScada, 'Select * from cgroup')
provstr скопирована из работающего подключения udl
автор
OLE DB provider "MSDASQL" for linked server "ClearScada" returned message "[Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию".
Msg 7303, Level 16, State 1, Line 1
Cannot initialize the data source object of OLE DB provider "MSDASQL" for linked server "ClearScada".

Пробовали задать provstr как в ОDBC в фвйловом дсн, полуичли ту же ошибку.
@provstr = 'DRIVER=Control Microsystems ClearSCADA Driver;UID=user;LOCALTIME=False;LOCATION=MAIN;'
Для разнообразия попытались подключиться к ORACLE 10g, напрямую через ORAOLEDB или через ODBC, тоже не получилось.
И даже подключение к файлу хls

SELECT * FROM OPENROWSET('MSDASQL', 
 'Provider=MSDASQL;Persist Security Info=False;Data Source=Файлы Excel;Initial Catalog=D:\', 
 'select * from [chan.csv]') txt 
Выдает ошибку
OLE DB provider "MSDASQL" for linked server "(null)" returned message "[Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию".
Msg 7303, Level 16, State 1, Line 2
Cannot initialize the data source object of OLE DB provider "MSDASQL" for linked server "(null)".
Явно надо что-то в консерватории подправить. Доктор, что я делаю не так????
30 июл 10, 12:01    [9183412]     Ответить | Цитировать Сообщить модератору
 Re: linked server. Ошибка 7303  [new]
Glory
Member

Откуда:
Сообщений: 104751
aigr
Добрый день!
Пытаюсь подключить удаленный сервер c БД ClearScada как linked через ODBC. Подключение через ODBC настроено и работает, проверили, данные получили через Excel, там все в порядке.
select @@version
Microsoft SQL Server 2005 - 9.00.3042.00 (Intel X86)   Feb  9 2007 22:47:07   Copyright (c) 1988-2005 Microsoft Corporation  Standard Edition on Windows NT 5.2 (Build 3790: Service Pack 2) 
Подключаю следующим образом
EXEC sp_addlinkedserver 
@server = 'ClearScada', 
@srvproduct = '', 
@provider = 'MSDASQL', 
@provstr = 'Provider=MSDASQL.1;Password=pass;Persist Security Info=True;User ID=user;Data Source=clearscada' 
go
exec sp_addlinkedsrvlogin 'ClearScada', 'false', NULL, 'user', 'pass'
go
SELECT * FROM OPENQUERY(ClearScada, 'Select * from cgroup')
provstr скопирована из работающего подключения udl

А вот этот Data Source=clearscada вы где и какого типа создавали ?
30 июл 10, 12:05    [9183462]     Ответить | Цитировать Сообщить модератору
 Re: linked server. Ошибка 7303  [new]
Glory
Member

Откуда:
Сообщений: 104751
aigr

И даже подключение к файлу хls

SELECT * FROM OPENROWSET('MSDASQL', 
 'Provider=MSDASQL;Persist Security Info=False;Data Source=Файлы Excel;Initial Catalog=D:\', 
 'select * from [chan.csv]') txt 
Выдает ошибку
OLE DB provider "MSDASQL" for linked server "(null)" returned message "[Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию".
Msg 7303, Level 16, State 1, Line 2
Cannot initialize the data source object of OLE DB provider "MSDASQL" for linked server "(null)".
Явно надо что-то в консерватории подправить. Доктор, что я делаю не так????

Вообще то для работы с хls используют Microsoft.JET.OLEDB
В хелпе даже примеры есть
30 июл 10, 12:07    [9183473]     Ответить | Цитировать Сообщить модератору
 Re: linked server. Ошибка 7303  [new]
aigr
Member

Откуда:
Сообщений: 61
Glory,
Это наименование ODBC подключения - подключение пользовательское
По поводу Microsoft.JET.OLEDB, хотелось именно MSDASQL проверить
30 июл 10, 12:09    [9183490]     Ответить | Цитировать Сообщить модератору
 Re: linked server. Ошибка 7303  [new]
Glory
Member

Откуда:
Сообщений: 104751
aigr
Glory,
Это наименование ODBC подключения - подключение пользовательское

И как учетная запись MSSQL увидит чужую пользовательскую dsn ?

aigr

По поводу Microsoft.JET.OLEDB, хотелось именно MSDASQL проверить

Мне бы тоже хотелось, что бы был один универсальный драйвер для доступа к любым базам
Но такого нет
30 июл 10, 12:11    [9183515]     Ответить | Цитировать Сообщить модератору
 Re: linked server. Ошибка 7303  [new]
aigr
Member

Откуда:
Сообщений: 61
Glory,сделали системным, не помогло, ошибка та же.
мне эксель не нужен сам по себе, мне нужна именно ClearScada, или вы хотите сказать, что через
Microsoft.JET.OLEDB я могу подключаться к соединенеию одвс? ведь нет же?
Я просто пытаюсь понять в чем проблема, в драйвере ClearScada или в MSDASQL. Или парамтеры заданы неверно
30 июл 10, 12:17    [9183583]     Ответить | Цитировать Сообщить модератору
 Re: linked server. Ошибка 7303  [new]
Glory
Member

Откуда:
Сообщений: 104751
aigr
Glory,сделали системным, не помогло, ошибка та же.

Вы это сделали на стороне сервера, надеюсь ?
Под учтеной записью сервера ?
30 июл 10, 12:20    [9183611]     Ответить | Цитировать Сообщить модератору
 Re: linked server. Ошибка 7303  [new]
aigr
Member

Откуда:
Сообщений: 61
Glory,да, на стороне сервера MSSQL, если быть точным.. под администратором. Сервер MSSQL инсталлировался под ним же. Или у него своя учетная запись должна быть?
30 июл 10, 12:24    [9183646]     Ответить | Цитировать Сообщить модератору
 Re: linked server. Ошибка 7303  [new]
Glory
Member

Откуда:
Сообщений: 104751
aigr
Glory,да, на стороне сервера MSSQL, если быть точным.. под администратором. Сервер MSSQL инсталлировался под ним же. Или у него своя учетная запись должна быть?

Откройте в хелпе статью про sp_addlinkedserver
Найдите там таблицу параметров для разных типов соединения и серверов
В ней найдите строку ODBC data source
Выполните sp_addlinkedserver со всеми полученными выше параметрами
30 июл 10, 12:32    [9183720]     Ответить | Цитировать Сообщить модератору
 Re: linked server. Ошибка 7303  [new]
aigr
Member

Откуда:
Сообщений: 61
Есть! Съелось вот так
EXEC sp_addlinkedserver 
  @server= 'ClearScadamain2' , @srvproduct = '',  @provider=  'MSDASQL'   , @datasrc= 'CLearScadaMain' 
go
exec sp_addlinkedsrvlogin 'ClearScadamain2', 'false', NULL, 'user, 'pass'
go
SELECT * FROM OPENQUERY(ClearScadamain2, 'Select * from cgroup')
  

Glory спасибо огромное, такой вариант был изначально и не работал :)
ключевым моментом был пользовательский DSN видимо, дальше уже мы начали извращаться
30 июл 10, 12:49    [9183883]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: linked server. Ошибка 7303  [new]
hyp1k
Member

Откуда:
Сообщений: 72
aigr, русские буквы не отображаются в результате селекта при таком подключении :( как решить подскажете?
20 фев 12, 11:47    [12120941]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить