Impossibile connettersi a SQL Server da Excel 2007


10

Sto provando a connettermi a Microsoft SQL Server 2008 R2 da Excel 2007. Quando tenta di connettersi ottengo l'errore:

[DBNETLIB] [ConnectionOpen (Invalid Instance ()).] Connessione non valida.


I passaggi per riprodurre

  • Nella scheda Dati , nel gruppo Ottieni dati esterni , fare clic su Da altre origini , quindi su Da SQL Server :

inserisci qui la descrizione dell'immagine

  • digitare il nome del computer SQL Server nella casella Nome server .

  • Per inserire un nome utente e una password del database, fare clic su Usa il nome utente e la password seguenti , quindi digitare il nome utente e la password nelle caselle Nome utente e Password corrispondenti :

inserisci qui la descrizione dell'immagine


Informazioni aggiuntive

  • Io posso connettersi a SQL Server da SQL Server Management Studio :
    inserisci qui la descrizione dell'immagine

  • Io posso connettersi a SQL Server con telnet:

    C:\Users\Ian>telnet avenger 1433
    
  • SQL Server è in ascolto sulla porta 1433:
    inserisci qui la descrizione dell'immagine

  • Excel si connette e riceve traffico di risposta da SQL Server:
    inserisci qui la descrizione dell'immagine

  • Io posso ping Server:

    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
    
  • Cercare di connettersi per indirizzo IP (anziché per nome) non ha alcun effetto:
    inserisci qui la descrizione dell'immagine

  • Windows Firewall non è in esecuzione sul server:
    inserisci qui la descrizione dell'immagine


1
Anche se è passato un po 'di tempo, grazie per aver incluso così tanti dettagli.
ta.speot.is

Risposte:


11

Immagino che stai effettivamente usando un'istanza denominata e il client SQL Native ti consente di cavartela usando AVENGERcome nome del server, ma il DBNETLIB(che credo sia il vecchio client SQL) è più impegnativo.

Sei sicuro che non lo sia AVENGER\SQLEXPRESS,1433?


Si scopre che è quello. Va notato che semplicemente AVENGER\SQLEXPRESSnon ha funzionato; ho dovuto includere la porta (standard).
Ian Boyd,

Altre ipotesi pericolose, ma il computer su cui è in esecuzione Excel non è in grado di comunicare con il servizio SQL Browser sul server (o il servizio non è in esecuzione).
ta.speot.is il

0

Ho avuto lo stesso problema.

Una vecchia applicazione aveva registrato una vecchia versione di SQLOLEDB.DLLin

C:\Windows\System32

Risolto eseguendo questi comandi:

regsvr32 "c:\Program Files\Common Files\System\Ole DB\sqloledb.dll"  

e

del c:\WINDOWS\system32\sqloledb.dll

0

L'uso del nome del server di dati del server SQL ha risolto questo problema in Excel 2013

  1. Connettersi al server di database con SQL Server Management Studio
  2. Fare clic con il tasto destro sul server in Esplora oggetti
  3. Seleziona Proprietà
  4. Utilizzare il valore Nome elencato nella pagina Proprietà generali del server

0

Ho avuto lo stesso problema durante la connessione da Access 2007 a SQL Server 2016. La mia soluzione era abilitare il protocollo TCP / IP (in Gestione configurazione SQL Server).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.