Question

J'ai base de données qui a plusieurs schémas et des objets en eux. Je veux consolider les objets dans un schéma.

J'ai essayé

ALTER SCHEMA dbo TRANSFER <custom_schema>.<table_name>

je reçois un « objet existe déjà un message ». Cependant, je ne peux pas le voir dans le studio de gestion et

SELECT * from dbo.<table_name>

renvoie "objet n'existe pas" erreur.

On dirait une entrée de table système est détraqué. Je regardais sysobjects et il n'a qu'une seule entrée. Toutes les suggestions sur la façon de tirer des problèmes / résoudre ce problème est la bienvenue.

Note: Je peux créer un synonyme

CREATE SYNONYM dbo.<table_name> FOR <custom_schema>.<table_name>

fonctionne très bien

Était-ce utile?

La solution

Selon cette page MSDN votre problème peut être causé par un double clé primaire nom . à savoir votre conflit de nom de clé primaire de TABLE_NAME avec un nom de clé primaire déjà définie dans une autre table dbo.

  

Pour résoudre ce problème, renommez le   clé primaire de la table que vous   à déplacer. Utilisez un nom qui ne   apparaît comme une clé primaire dans la   schéma de destination.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top