Usiłuję połączyć się z Microsoft SQL Server 2008 R2 z Excel 2007. Podczas próby połączenia pojawia się błąd:
[DBNETLIB] [ConnectionOpen (Invalid Instance ()).] Niepoprawne połączenie.
Kroki ku reprodukcji
- Na karcie Dane w grupie Uzyskaj dane zewnętrzne kliknij opcję Z innych źródeł , a następnie kliknij opcję Z programu SQL Server :
wpisz nazwę komputera z programem SQL Server w polu Nazwa serwera .
Aby wprowadzić nazwę użytkownika i hasło do bazy danych, kliknij Użyj następującej nazwy użytkownika i hasła , a następnie wpisz swoją nazwę użytkownika i hasło w odpowiednich polach Nazwa użytkownika i Hasło :
Dodatkowe informacje
I może połączyć się z SQL Server z SQL Server Management Studio :
I może połączyć się z SQL Server
telnet
:C:\Users\Ian>telnet avenger 1433
SQL Server jest nasłuchuje na porcie 1433:
Excel robi connect i odbierać ruch odpowiedzi z serwera SQL:
I może
ping
serwer:C:\Users\Ian>ping avenger Pinging avenger.newland.com [192.168.1.244] with 32 bytes of data: Reply from 192.168.1.244: bytes=32 time=1ms TTL=128 Reply from 192.168.1.244: bytes=32 time<1ms TTL=128 Reply from 192.168.1.244: bytes=32 time<1ms TTL=128 Reply from 192.168.1.244: bytes=32 time<1ms TTL=128 Ping statistics for 192.168.1.244: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 0ms, Maximum = 1ms, Average = 0ms
Próba połączenia według adresu IP (a nie nazwy) nie przynosi żadnego efektu:
Zapora systemu Windows nie działa na serwerze:
źródło
Odpowiedzi:
Zaryzykowałbym przypuszczenie, że faktycznie używasz nazwanej instancji, a SQL Native Client pozwala ci uniknąć używania
AVENGER
nazwy serwera, aleDBNETLIB
(moim zdaniem jest to stary klient SQL) jest bardziej wymagający.Jesteś pewien, że tak nie jest
AVENGER\SQLEXPRESS,1433
?źródło
AVENGER\SQLEXPRESS
nie działało; I miał do włączenia portu (standard).Miałem ten sam problem.
Stara aplikacja zarejestrowała starą wersję
SQLOLEDB.DLL
wNaprawiono przez uruchomienie następujących poleceń:
i
źródło
Użycie nazwy serwera danych serwera SQL naprawiło to dla mnie w programie Excel 2013
źródło
Miałem ten sam problem podczas łączenia z Access 2007 do SQL Server 2016. Rozwiązaniem w moim przypadku było włączenie protokołu TCP / IP (w SQL Server Configuration Manager).
źródło