73 votes

Erreur de comparaison de schémas SQL "La cible n'est pas disponible".

Lors de la comparaison d'un projet SQLServer dans Visual Studio 2015 Update 2 avec une base de données SQL Server 2012, l'erreur "Target is unavailable" ou "Source is unavailable" apparaît lors du changement de direction.

Il fonctionnait correctement il y a quelques mois. Existe-t-il une solution de contournement ? Je n'en ai pas trouvé.

0 votes

Il existe un problème à ce sujet dans Visual Studio Developer Community : developercommunity.visualstudio.com/content/problem/73094/ . Je vous recommande de voter en faveur de cette question afin qu'elle soit remarquée et traitée.

0 votes

Nous sommes en 2019 et le problème persiste dans VS2015 et VS2017. La réponse de Sam n'a pas aidé. La réponse de sotn a aidé mais seulement une fois. La création d'un nouvel utilisateur temporaire de la base de données a fonctionné comme solution de dernier recours.

123voto

Stacy Vicknair Points 108

J'ai constaté qu'en utilisant nom d'utilisateur@servername comme nom d'utilisateur pour la connexion résoudra le problème lorsqu'il se produit avec les bases de données Azure. J'ai eu des connexions qui ont toujours fonctionné sans faire cela et qui se sont soudainement arrêtées, et cela a réglé le problème pour moi.

Par exemple, en utilisant un login de mylogin et en se connectant à myserver.database.Windows.net si j'utilise plutôt mylogin@myserver.database.Windows.net comme nom d'utilisateur, je n'obtiendrai pas le problème "Source is unavailable".

2 votes

C'était génial. J'ai résolu des mois de frustration ! J'ai découvert que cela fonctionne avec juste username@myserver. Je n'ai pas eu besoin de fournir la partie database.Windows.net.

0 votes

Hey @robs, au début j'ai fait la même chose et je n'ai pas utilisé l'adresse du serveur entièrement qualifiée. J'ai trouvé que le problème revenait après un certain temps quand je l'ai fait et c'est pourquoi j'ai édité ce post comme je l'ai fait. Gardez juste à l'esprit que si le problème se reproduit, vous devrez peut-être utiliser le nom complet du serveur.

0 votes

Vous êtes un génie !

88voto

Sam Points 3542

J'obtiens cette erreur dans Visual Studio 2017 lorsque j'utilise l'authentification du serveur SQL mais que je n'enregistre pas le mot de passe. J'ai testé ces étapes avec Visual Studio 15.6.3 et SQL Server 12.0.5000.0.

Correction de l'erreur

Cela résout le problème, mais le problème revient la prochaine fois que je redémarre Visual Studio.

  1. Aller à Outils -> SQL Server -> Nouvelle comparaison de schémas...
  2. Sélectionnez soit Sélectionner la source o Sélectionnez la cible
  3. Sélectionnez Sélectionner la connexion
  4. Sous Connexions récentes trouvez toutes les connexions qui vous ont donné cette erreur
  5. Pour chacun d'entre eux, cliquez avec le bouton droit de la souris sur la connexion et sélectionnez Retirer de l'historique
  6. Redémarrer Visual Studio

Empêcher l'erreur de réapparaître

  1. Compléter Correction de l'erreur au-dessus de
  2. Lorsque vous définissez les détails de la connexion, vérifiez l'écran suivant Mémoriser le mot de passe la case à cocher.

Reproduction de l'erreur

Si vous voulez résoudre cette erreur, voici comment j'ai réussi à la reproduire.

  1. Aller à Outils -> SQL Server -> Nouvelle comparaison de schémas...
  2. Sélectionnez une connexion source et cible
  3. Pour au moins une connexion, utilisez Authentification du serveur SQL mais Ne le fais pas. sélectionnez Mémoriser le mot de passe
  4. Appuyez sur Comparez
  5. Assurez-vous qu'il fonctionne sans erreur
  6. Redémarrer Visual Studio
  7. Répétez les étapes 1 à 4, en utilisant exactement les mêmes détails de connexion.

0 votes

Grâce à cela, nous avons pu faire la comparaison des schémas s**** en vs 2015. Merci @Sam !

0 votes

Brillant ! Cela a fonctionné pour moi. J'avais remarqué que le fait de ne pas enregistrer le mot de passe signifiait que l'élément de l'historique mis en cache resterait "non enregistré" même si vous essayez de cocher à nouveau la case, mais je n'ai pas essayé de la supprimer. Merci !

0 votes

Cela a failli fonctionner pour moi, mais après avoir suivi votre liste d'erreurs et rouvert VS, tout mon historique était réapparu et une nouvelle connexion a échoué. Ce qui a fonctionné (pour cette fois au moins) a été de supprimer tout l'historique et de se reconnecter immédiatement sans fermer le dialogue. Malheureusement, je pense que je reviendrai sur cette question dans une semaine ou deux. ....

27voto

sotn Points 1460

Après avoir tout essayé ici, voici ce qui a fonctionné pour moi :

  1. Fermez l'instance VS.

  2. Supprimer les clés de connexion sauvegardées dans

HKEY_CURRENT_USER \SOFTWARE\Microsoft\VisualStudio\14.0\ConnectionMruList

  1. Rouvrez VS et réessayez.

0 votes

J'ai eu le même problème avec la connexion Source : "Source is unavailable" Ces étapes ont résolu l'erreur pour moi tout de suite.

0 votes

Je suis également confronté au même problème et ces étapes ont résolu l'erreur. Merci beaucoup.

1 votes

Pour info, la suppression des clés de connexion a résolu mon problème dans VS 2017.

18voto

Kuffs Points 12318

Les autres réponses n'ont pas fonctionné pour moi car j'utilisais directement SQL Server et non Azure mais après avoir vérifié les propriétés avancées de la chaîne de connexion, j'ai vu que l'authentification était définie sur "Non spécifié" et que la bibliothèque réseau était vide.

Je les ai changés et ça a marché à nouveau. C'est plutôt étrange, car il m'a permis de sélectionner la base de données pour la connexion. Il ne m'a simplement pas laissé comparer les schémas, ce qui a donné le message "Source is unavailable".

Sql

4 votes

Ça a marché pour moi environ 3 fois, et maintenant je suis de retour à la case départ. Je dois faire une combinaison de 1) fermer VS, 2) effacer la liste MRU dans le registre, et 3) ce qui précède.

0 votes

@LarryBud Cela a fonctionné pour moi aussi, mais je pense que nous devrions fournir un peu plus de contexte, Comment effacer l'URM et pour Visual Studio 2015

2 votes

Cela vient de se produire à nouveau dans VS2017. La combinaison d'authentification ne "colle" plus et est réinitialisée à chaque fois que la connexion est ouverte. Ce qui a fonctionné pour moi cette fois-ci a été de supprimer la connexion de la liste, de choisir une connexion différente, puis de rajouter la connexion que je voulais réellement.

12voto

knr Points 669

Pour moi, c'était le \ à la fin de l'adresse IP du serveur dans le fichier server name champ qui l'a réparé. Très étrange.

Par exemple, au lieu de 10.10.10.10 i écrire 10.10.10.10\ et ça se connecte bien.

Note : J'utilise Visual Studio 2017.

0 votes

Cela a fonctionné au début, mais après avoir redémarré Visual Studio, le problème s'est reproduit.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X