J'essaie de me connecter à Microsoft SQL Server 2008 R2 à partir d'Excel 2007. Lorsqu'il essaie de se connecter, j'obtiens l'erreur:
[DBNETLIB] [ConnectionOpen (instance non valide ()).] Connexion non valide.
Étapes à reproduire
- Sous l' onglet Données , dans le groupe Obtenir les données externes , cliquez sur À partir d'autres sources , puis sur À partir de SQL Server :
tapez le nom de l'ordinateur SQL Server dans la zone Nom du serveur .
Pour entrer un nom d'utilisateur et un mot de passe de base de données, cliquez sur Utiliser le nom d'utilisateur et le mot de passe suivants , puis saisissez votre nom d'utilisateur et votre mot de passe dans les zones Nom d'utilisateur et Mot de passe correspondantes :
Information additionnelle
Je peux me connecter à SQL Server à partir de SQL Server Management Studio :
Je peux me connecter à SQL Server avec
telnet
:C:\Users\Ian>telnet avenger 1433
SQL Server est à l' écoute sur le port 1433:
Excel ne connexion, et recevoir le trafic de réponse de SQL Server:
Je peux
ping
le serveur: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
Essayer de se connecter par adresse IP (plutôt que par nom) n'a aucun effet:
Le pare-feu Windows ne fonctionne pas sur le serveur:
Réponses:
Je risquerais de deviner que vous utilisez en fait une instance nommée et que le client SQL Native vous permet de vous en passer
AVENGER
comme nom de serveur, mais leDBNETLIB
(qui, je crois, est l'ancien client SQL) est plus exigeant.Êtes-vous sûr que ce n'est pas le cas
AVENGER\SQLEXPRESS,1433
?la source
AVENGER\SQLEXPRESS
n'a tout simplement pas fonctionné; j'ai dû inclure le port (standard).J'ai eu le même problème.
Une ancienne application avait enregistré une ancienne version de
SQLOLEDB.DLL
enCorrigé en exécutant ces commandes:
et
la source
L'utilisation du nom du serveur de données SQL Server a corrigé cela pour moi dans Excel 2013
la source
J'ai eu le même problème lors de la connexion d'Access 2007 à SQL Server 2016. La solution dans mon cas était d'activer le protocole TCP / IP (dans SQL Server Configuration Manager).
la source