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

Откуда:
Сообщений: 505
EXEC sp_addlinkedserver
@server = 'linksrv',
@srvproduct = 'Microsoft OLE DB Provider for DB2',
@catalog = 'dbname',
@provider = 'DB2OLEDB',
@location = 'dbname',
@provstr =
	'Network Transport Library=TCPIP;NetAddr=srvname;NetPort=50000;Default Schema=user_schema;PkgCol=dbname;Data Source=dbname;';
EXEC sp_addlinkedsrvlogin 'istock', 'false', NULL, 'db2user', 'db2pass';

Выполняю тестовый запрос
select * from openquery(istock, 'select 1 FROM SYSIBM.SYSDUMMY1;'); 

Ошибка :OLE DB provider "DB2OLEDB" for linked server returned message "A SQL system error has occurred. The current SQL statement cannot be completed successfully. SQLSTATE: 58004, SQLCODE: -901".
DB2:10.1
MSSQL:Microsoft SQL Server 2005 - 9.00.3054.00 (X64)
Обе СУБД находятся на одном сервере. Создан также ODBC -алиас ,но через ODBC так же не смог соединиться.
9 июл 12, 14:24    [12838841]     Ответить | Цитировать Сообщить модератору
 Re: Linked server MSSQL->DB2  [new]
nezhadnye_my
Guest
попробуйте поменять провайдера на MSDASQL
9 июл 12, 14:29    [12838870]     Ответить | Цитировать Сообщить модератору
 Re: Linked server MSSQL->DB2  [new]
Glory
Member

Откуда:
Сообщений: 104760
И что в DB2 означает - SQLSTATE: 58004, SQLCODE: -901 ?
9 июл 12, 14:30    [12838873]     Ответить | Цитировать Сообщить модератору
 Re: Linked server MSSQL->DB2  [new]
Troglodit
Member

Откуда:
Сообщений: 505
Short Description: UNSUCCESSFUL EXECUTION CAUSED BY A SYSTEM ERROR THAT DOES NOT PRECLUDE THE SUCCESSFUL EXECUTION OF SUBSEQUENT SQL STATEMENTS

То есть DB2 не позволяет такое соединение?
9 июл 12, 14:37    [12838923]     Ответить | Цитировать Сообщить модератору
 Re: Linked server MSSQL->DB2  [new]
Glory
Member

Откуда:
Сообщений: 104760
Troglodit
То есть DB2 не позволяет такое соединение?

Какое "такое соединение" ?
Ваш запрос select 1 FROM SYSIBM.SYSDUMMY1; вообще правильный для DB2 ?
9 июл 12, 14:38    [12838929]     Ответить | Цитировать Сообщить модератору
 Re: Linked server MSSQL->DB2  [new]
Troglodit
Member

Откуда:
Сообщений: 505
select 1 FROM SYSIBM.SYSDUMMY1-это аналог в SQLSRV select 1;
9 июл 12, 14:41    [12838953]     Ответить | Цитировать Сообщить модератору
 Re: Linked server MSSQL->DB2  [new]
Troglodit
Member

Откуда:
Сообщений: 505
Изменил провайдера на MSDASQL
EXEC sp_addlinkedserver 
   @server = 'linksrv', 
   @srvproduct = '',
   @provider = 'MSDASQL', 
   @datasrc = 'dbname'

OLE DB provider "MSDASQL" for linked server "dbname" returned message "[Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr failed".
OLE DB provider "MSDASQL" for linked server "dbname" returned message "[IBM][CLI Driver] SQL1042C Произошла непредвиденная системная ошибка. SQLSTATE=58004
".
9 июл 12, 14:49    [12839007]     Ответить | Цитировать Сообщить модератору
 Re: Linked server MSSQL->DB2  [new]
Troglodit
Member

Откуда:
Сообщений: 505
Всем спасибо. Это не проблема MS SQL Server.
9 июл 12, 17:45    [12840433]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить