“Ne peut pas ouvrir par défaut de l'utilisateur de la base de données. La connexion a échoué.” après l'installation de SQL Server Management Studio Express
J'ai une base de données dans un fichier local qui est utilisé par un programme. Le programme a des fonctionnalités limitées et j'ai besoin d'exécuter certaines rapide des requêtes. J'ai installé SQL Server Management Studio Express 2005 (SSMSE), connecté à l'instance de SQL Server, joint le fichier de base de données, et a couru les requêtes. Maintenant, le programme d'origine ne plus se connecter à la base de données. Je reçois l'erreur:
Ne peut pas ouvrir par défaut de l'utilisateur de la base de données. Échec de la connexion. Échec de la connexion de l'utilisateur "poste de travail\MyUserName'.
J'ai repris la SSMSE et a essayé de définir la valeur par défaut de la base de données. J'ai donc ouvert de Sécurité, les Connexions, les BUILTIN\Administrateurs et BUILTIN\Utilisateurs. En vertu de Général, j'ai mis la base de données par défaut pour la base de données du programme. En vertu de Mappages Utilisateur, j'ai veillé à ce que la base de données est cochée et que db_datareader et db_datawriter sont cochées.
Le programme utilise la chaîne de connexion:
Serveur=(local)\Instance; AttachDbFilename=C:\Chemin_base_données\Base de données.mdf; Integrated Security=True; User Instance=True;
Je sais jack-administration de base de données. De quoi d'autre ai-je raté?
OriginalL'auteur Hand-E-Food | 2011-12-16
Vous devez vous connecter pour publier un commentaire.
Premier temps, essayer d'isoler le problème:
Je n'ai pas travaillé beaucoup avec les fichiers attachés dans la façon dont votre programme n' - mais vous écrivez que vous avez attaché les DB dans la Gestion d'un Studio. Avez-vous essayé de détacher avant l'exécution de votre programme? Vous êtes peut-être en voyant la Gestion de Studio et de votre programme de compétition pour l'accès exclusif à la MDF-fichier?
EDIT: j'ai ajouté le point 6 ci-dessus - ce qui est nouveau dans ma propre liste de TODOs lors de la résolution de ce type de Connexion a échoué. Mais il ne sembler un peu comme ce que vous êtes en train de vivre.
EDIT2: Dans la première édition, un nouvel élément a été ajouté à la liste. Ainsi les nombres dans les commentaires ne correspondent pas avec les nombres dans la réponse.
J'ai essayé detatching la base de données dans SSMSE. Il s'avère "Abîmer" est synonyme de "Supprimer" et ma base de données disparu dans le binaire de l'éther! Heureusement j'avais une sauvegarde à jour. En outre, la sauvegarde n'était pas "corrompu" par SSMSE et a travaillé avec l'application.
Point 5 décrit et résout mon problème exactement pour l'avenir. Je vous remercie beaucoup pour votre aide! C'est une honte je ne peux pas vous donner de bonus rep.
Ouch. Heureux le point 5 a aidé à - désolé d'entendre que le détachement réellement tué le fichier. Sera mise à jour de la réponse dans un instant.
Note pour les futurs lecteurs: le point 5 a été modifié pour le point 6. "Les Instances d'utilisateur" était la source du problème.
OriginalL'auteur
Ce peut-être pas répondre à votre question en particulier, mais qu'elle aidera d'autres avec le même problème
Le problème, c'est votre utilisateur est paramétré par défaut pour une base de données qui n'est pas accessible pour n'importe quelle raison (peut être renommé, supprimé, endommagé ou ...)
Pour résoudre le problème il suffit de suivre les instructions suivantes
"Propriétés De Connexion".
Une fois que vous êtes connecté à l'Instance de SQL Server exécuter le ci-dessous TSQL affecter la connexion d'une nouvelle base de données par défaut.
Sinon une fois que vous avez connecté le changement de votre base de données par défaut le nom de maître via l'INTERFACE utilisateur
Article est extrait de :
http://www.mytechmantra.com/LearnSQLServer/Fix-cannot-open-user-default-database-Login-failed-Login-failed-for-user-SQL-Server-Error/
OriginalL'auteur Kiarash
J'ai enfin compris cela, et ma situation est différente de toutes les autres que j'ai lu à propos de ce soir.
J'avais restauré ma base de données à partir d'une sauvegarde. Je savais qu'il était un particulier de connexion de l'utilisateur que je l'utilisais, j'ai donc créé cet utilisateur dans SSMS. Cependant, il y avait déjà un utilisateur de ce nom en vertu de la base de données qui était venu dans la sauvegarde.
Depuis que j'avais vissé autour de sorte que beaucoup d'essayer de résoudre ce problème, je n'ai pas pu supprimer l'utilisateur en vertu de la DB facilement. J'ai supprimé la base de données et restauré à nouveau. Alors:
Résumé: j'ai eu deux utilisateurs. Celui qui est venu avec la DB, et celui que j'avais créé. Supprimer celui qui est venu avec la DB et de créer votre propre.
OriginalL'auteur DustinA
Ce problème se manifeste pour moi quand j'ai pris mon défaut db en mode hors connexion. La prochaine chose que je sais que je ne pourrais pas vous identifier. Passer à l'onglet Propriétés de Connexion et sélection de la liste déroulante pour modifier la base de données je veux me connecter a aussi échoué.
Il permettez-moi tout de suite, une fois que j'ai tapé à la main de maître de la db j'ai voulu connecter (sur l'onglet Propriétés de Connexion).
OriginalL'auteur Mike Cheel
D'abord cliquer sur l'Option>> le Bouton “se Connecter au Serveur”.
Maintenant modifier la connexion à la base de données à n'importe quel existante base de données sur votre serveur comme maître ou de la base de données msdb.
Plus De Détails
https://blog.sqlauthority.com/2008/11/04/sql-server-fix-error-4064-cannot-open-user-default-database-login-failed-login-failed-for-user/
OriginalL'auteur Sundar
J'ai aussi eu ce même problème, il s'est avéré que j'essayais d'accéder à la construit dans les catégories de membres (en vue), et que .Net a été d'essayer de créer la base de données dans le dossier App_Data:
Cela va déclencher le système pour essayer de créer une base de données intégrée dans le système d'adhésion, qui peut ne pas être la façon dont votre système est configuré.
OriginalL'auteur Terry Kernan
J'ai eu un problème similaire avait tout simplement de télécharger SQL Express Utilitaire est capable de démarrer les Instances d'Utilisateur. SSEUtil est un outil écrit par l'équipe Visual Studio pour vous aider à résoudre Utilisateur Instance questions, vous pouvez en lire plus à ce sujet dans le fichier lisez-moi qui est installé avec l'utilitaire.
http://www.microsoft.com/downloads/details.aspx?FamilyID=fa87e828-173f-472e-a85c-27ed01cf6b02&DisplayLang=en.
Espère que cela aidera.
OriginalL'auteur Benson Makoni
Dans mon cas, j'ai dû mettre "se connecter à une base de données" droit chemin:
Sur votre instance, aller à
Security
, puis àLogins
.Clic droit, vous verrez
properties
et vous devez cliquer surSecurables
.Il donner la possibilité de se connecter à une base de données.
OriginalL'auteur wookee80