Nous venons de copier une base de données SQL 2008 sur un autre serveur, à des fins de test. L'utilisateur typique qui se connecte utilise certains objets dans un certain schéma. Disons que c'est l'utilisateur foo
et le schéma bar
.
foo
Le schéma par défaut est bar
au niveau de l'instance et de la base de données. Cependant, lorsque vous vous foo
connectez, il ne trouve aucun objet dans le bar
schéma sans utiliser un nom complet.
Pourquoi le schéma par défaut ne fonctionnerait-il pas ici?
la source
Un autre scénario dans lequel ce problème peut se produire (SQL 2008 R2) ...
J'avais un utilisateur lié à une connexion d'authentification SQL, que j'essayais d'associer à un schéma existant. La connexion n'avait pas de droits d' administrateur système , donc la solution ci-dessus n'a pas aidé.
J'ai finalement compris que la base de données était toujours configurée en mode de compatibilité SQL 2000. Le passage à SQL 2005 a résolu le problème.
la source
Il supposera que le schéma par défaut sur le nouveau serveur est dbo; Si le schéma n'a pas été copié avec la base de données.
Pas la solution, mais cela pourrait peut-être aider, jetez un œil à l'article msdn. http://msdn.microsoft.com/en-us/library/dd283095.aspx
la source
foo
sur le nouveau serveur. Il est défini commebar
au niveau de l'utilisateur d'instance et au niveau de l'utilisateur de la base de données.