:: Visual Foxpro, Foxpro for DOS
Проблема подключения к SQL2005
FoxProg
Автор

Сообщений: 150
Дата регистрации: 27.11.2012
Добрый день!
Есть сервер в локальной сети предприятия, на котором установлен SQL2000 с инстнс без имени и SQL2005 с инстанс SQL2005.
Подключаюсь из фокспро используя АДО
loconn = CREATEOBJECT('ADODB.Connection')
loconn.connectionstring = "DRIVER=SQL Server;SERVER="+sql_server+";DATABASE=personal;UID="+user_login+";PWD="+user_pass+";NETWORK=dbmssocn;Trusted Connection=Yes"
Из Windows 7 все работает без проблем, а из ХР не хочет, хотя к SQL2000 подключается нормально.
Выдает
Исключение OLE IDispatch, код 0 из Microsoft OLE DB Provider for ODBC Drivers: [Microsoft][ODBC SQL Server Driver][TCP/IP Sockets]Указанный SQL-сервер не найден...

Для 2000-го sql_server указываю 192.168.74.32
Для 2005-го sql_server указываю 192.168.74.32\SQL2005

Что интересно, когда в Администраторе источников данных ODBC создаю пользовательский DSN и указываю сервер 192.168.74.32\SQL2005, то он все равно обращается к базам данных сервера 192.168.74.32, т.е. 2000-го.

Может 2000-й снести совсем, чтобы не перехватывал?
Ratings: 0 negative/0 positive
Re: Проблема подключения к SQL2005
Аспид

Сообщений: 3475
Откуда: Москва
Дата регистрации: 01.04.2005
В строке вроде все правильно.
Сносить смысла нет, от этого 2005 не появится.
Что то с настройками.
Из SSMS конектится?

К слову, с 2005 лучше использовать нативный клиент.
Он знает про новые типы.
Но это к делу не относится.

Копайся в настройках сервера.

Просмотрел, что из 7ки работает.
А не пашет из ХР.
Попробуй натив клиента поставить, и его в строке соединения прописать.
А вдруг...


------------------




Исправлено 1 раз(а). Последнее : Аспид, 11.07.17 16:02
Ratings: 0 negative/0 positive
Re: Проблема подключения к SQL2005
ssa

Сообщений: 13008
Откуда: Москва
Дата регистрации: 23.03.2005
FoxProg
Для 2000-го sql_server указываю 192.168.74.32
Для 2005-го sql_server указываю 192.168.74.32, <номер порта, который слушает 2005> \SQL2005
Номер порта посмотреть в логе 2005 сервера

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/1 positive
Re: Проблема подключения к SQL2005
Аспид

Сообщений: 3475
Откуда: Москва
Дата регистрации: 01.04.2005
ssa
Номер порта посмотреть в логе 2005 сервера
Вряд ли.
Раз 7ки есть значит 1433.
И конект по имени инстанса.
Тут даже не в сервере, а на раб. станции надо смотреть.
ТС сообщил бы, ск. ХП, ск. вин 7


------------------
Ratings: 0 negative/0 positive
Re: Проблема подключения к SQL2005
PaulWist

Сообщений: 14625
Дата регистрации: 01.04.2004
в Администраторе источников данных ODBC при создании нового DSN в комбобокс (сервер) вписываешь IP\инстанс или выбираешь из выпадающего списка?


------------------
Есть многое на свете, друг Горацио...
Что и не снилось нашим мудрецам.
(В.Шекспир Гамлет)
Ratings: 0 negative/0 positive
Re: Проблема подключения к SQL2005
ssa

Сообщений: 13008
Откуда: Москва
Дата регистрации: 23.03.2005
Аспид
ssa
Номер порта посмотреть в логе 2005 сервера
Вряд ли.
Кто знает..
Цитата:
Раз 7ки есть значит 1433.
Порт от операционки не зависит никак. К тому же это порт дефолтногоинстанса, на котором сидит 2000
Цитата:
И конект по имени инстанса.
При указании IP адреса какие еще имена? Думаешь DNS разруливает сиквельные инстансы?
Цитата:
Тут даже не в сервере, а на раб. станции надо смотреть.
Совершенно не уверен.
Цитата:
ТС сообщил бы, ск. ХП, ск. вин 7
Какие порты слушают инстансы сервера от операционки клиента тоже никак не зависит.
Вот то, что на сервере скорее всего не запущен sql browser, который, собственно, и обеспечивает подключение через ИмяСервера\ИмяИнстанса, так это очень большая вероятность.


------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive
Re: Проблема подключения к SQL2005
Baga

Сообщений: 540
Откуда: г. Махачкала
Дата регистрации: 03.06.2006
В SQL2005 прекрасно работает на XP
STORE 'SERVER1' TO sqlname &&Имя Вашего сервера
STORE 'USER1' sqllogin
STORE '111' TO sqlpwd
STORE 'MyBase' TO sqlbase
STORE SQLSTRINGCONNECT("DRIVER=SQL Server; SERVER=&sqlname; uid=&sqllogin; pwd=&sqlpwd; DATABASE=&sqlbase") TO lnConn
Тут не нужно указывать номер порта. Если сервер есть в сети, то фокс найдет его.


------------------
Багавудин Мирзаев
Ratings: 1 negative/0 positive
Re: Проблема подключения к SQL2005
ssa

Сообщений: 13008
Откуда: Москва
Дата регистрации: 23.03.2005
Вполне возможно, что в настройках клиента sql server на ХР настроен алиас. Сравнить настройки клентов на обоих машинах.


------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive
Re: Проблема подключения к SQL2005
PaulWist

Сообщений: 14625
Дата регистрации: 01.04.2004
Baga
В SQL2005 прекрасно работает на XP
STORE 'SERVER1' TO sqlname &&Имя Вашего сервера
STORE 'USER1' sqllogin
STORE '111' TO sqlpwd
STORE 'MyBase' TO sqlbase
STORE SQLSTRINGCONNECT("DRIVER=SQL Server; SERVER=&sqlname; uid=&sqllogin; pwd=&sqlpwd; DATABASE=&sqlbase") TO lnConn
Тут не нужно указывать номер порта. Если сервер есть в сети, то фокс найдет его.

Я перестал понимать те если MSSQL 2005 установлен как инстанс по умолчанию на XP, то коннект клиента к серверу на XP проходит нормально. НО причем здесь сервер установленный на XP, когда надо с XP подсоединиться к именованному инстансу на другом компе?


------------------
Есть многое на свете, друг Горацио...
Что и не снилось нашим мудрецам.
(В.Шекспир Гамлет)
Ratings: 0 negative/0 positive
Re: Проблема подключения к SQL2005
Foxtrot

Сообщений: 3408
Откуда: Куда:
Дата регистрации: 25.04.2003
ты видима запятую пропустил
согласно документации производителя про адресацию
Цитата:
The network address of the server running an instance of SQL Server. Address is usually the network name of the server, but can be other names such as a pipe, an IP address, or a TCP/IP port and socket address.
If you specify an IP address, make sure that the TCP/IP or named pipes protocols are enabled in SQL Server Configuration Manager.

The value of Address takes precedence over the value passed to Server in ODBC connection strings when using SQL Server Native Client. Also note that Address=; will connect to the server specified in the Server keyword, whereas Address= ;, Address=.;, Address=localhost;, and Address=(local); all cause a connection to the local server.

The complete syntax for the Address keyword is as follows:

[protocol:]Address[,port |\pipe\pipename]

protocol can be tcp (TCP/IP), lpc (shared memory), or np (named pipes). For more information about protocols, see Configure Client Protocols.

If neither protocol nor the Network keyword is specified, SQL Server Native Client will use the protocol order specified in SQL Server Configuration Manager.

port is the port to connect to, on the specified server. By default, SQL Server uses port 1433.
взято отседа docs.microsoft.com


------------------
Мойте ноги, моя ноги вы моете и руки




Исправлено 1 раз(а). Последнее : Foxtrot, 11.07.17 18:16
Ratings: 0 negative/0 positive
Re: Проблема подключения к SQL2005
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
Вот только не нужно вставлять значения в строку при помощи макро...
SQLSTRINGCONNECT("DRIVER=SQL Server;SERVER=" + m.sqlname +";uid=" + m.sqllogin + ";pwd=" + m.sqlpwd+ ";DATABASE=" + m.sqlbase)
И не понимаю такую особую любовь к команде STORE - ладно инициализировать кучу переменных, а для одиночных куда как короче и яснее писать просто
переменная = "значение"
Тем более что в этом случае для переменной даже не требуется префикс m.


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: Проблема подключения к SQL2005
FoxProg
Автор

Сообщений: 150
Дата регистрации: 27.11.2012
Добрый день!
Извините, но все, что Вы пишете я проходил.
Да, забыл сказать, что на сервере установлена операционка Windows Server 2003 SP1.
SQL 2005 Express SP4
Ratings: 0 negative/0 positive
Re: Проблема подключения к SQL2005
FoxProg
Автор

Сообщений: 150
Дата регистрации: 27.11.2012
Снес оба SQL сервера и устанавливаю только SQL 2005
Ratings: 0 negative/0 positive
Re: Проблема подключения к SQL2005
FoxProg
Автор

Сообщений: 150
Дата регистрации: 27.11.2012
Проблему решил.
Сначала все снес и установил только SQL2005, а чтобы не изменилась строка подключения для пользователей опять инстанс назвал SQL5005. Это ничего не дало и все так же компьютеры с ХР не могли подключиться.
Создал еще один инстанс без имени (Default), перенес в него БД и... О, чудо, все заработало.
Получается что ХП по каким-то причинам не мог подключиться к именованному инстансу.
Хотя у меня есть еще один сервер с ХР, на котором установлен SQL 2005 и с именем инстанс, но там проблем нету.
Вывод: если сервер ХР, то имя инстанс проходит нормально, если сервер 2003 (может и какой-то другой), то инстанс должен быть Default.
Ratings: 0 negative/0 positive
Re: Проблема подключения к SQL2005
FoxProg
Автор

Сообщений: 150
Дата регистрации: 27.11.2012
Спасибо всем за участие!
Ratings: 0 negative/0 positive
Re: Проблема подключения к SQL2005
ssa

Сообщений: 13008
Откуда: Москва
Дата регистрации: 23.03.2005
FoxProg
Вывод: если сервер ХР, то имя инстанс проходит нормально, если сервер 2003 (может и какой-то другой), то инстанс должен быть Default.
Чушь собачья. Извините за резкость. Я уже писал что отвечает за работу с именованными инстансами и как к ним подключаться. И операционная система тут совершенно не при делах.

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive
Re: Проблема подключения к SQL2005
Аспид

Сообщений: 3475
Откуда: Москва
Дата регистрации: 01.04.2005
ssa
FoxProg
Вывод: если сервер ХР, то имя инстанс проходит нормально, если сервер 2003 (может и какой-то другой), то инстанс должен быть Default.
Чушь собачья. Извините за резкость. Я уже писал что отвечает за работу с именованными инстансами и как к ним подключаться. И операционная система тут совершенно не при делах.
+100500
И хоть с ХР хоть с вин98 все работает.
Вы не разобрались до конца.
Думаю, дальше все полетит, но всяко может быть, из-за той проблемы.

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


------------------
Ratings: 0 negative/0 positive
Re: Проблема подключения к SQL2005
Влад Колосов

Сообщений: 22664
Откуда: Ростов-на-Дону
Дата регистрации: 05.05.2005
Дык сносить зачем, еще в третьем сообщении написано, что именованный на том же сервере слушает другой порт, не дефолтный. Два сервера не могут 1433 оба использовать. Либо, чтобы не гадать с портом, надо включать службу SQL Browser.


------------------
Совершенство - это не тогда, когда нельзя
ничего прибавить, а тогда, когда нечего убавить.




Исправлено 1 раз(а). Последнее : Влад Колосов, 18.07.17 11:44
Ratings: 0 negative/0 positive


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

On-line: 25 (Гостей: 25)

© 2000-2024 Fox Club 
Яндекс.Метрика