web-dev-qa-db-fra.com

Comment puis-je résoudre le "Table 'dbo.Foo' existe déjà." erreur quand la table n'existe pas?

J'ai créé une table et ensuite réalisé que j'avais commis une erreur. SSMS ne m'a pas laissé mettre à jour la table sans la recréer. J'ai donc supprimé la table puis essayé de la recréer.

Cela ne me laisse pas faire cela, et j'obtiens un dialogue d'erreur

La table 'dbo.Foo' existe déjà.

Alors j'essaie de le supprimer à nouveau:

drop table dbo.Foo

Impossible de supprimer la table 'dbo.Foo', car elle n'existe pas ou vous n'avez pas la permission.

Actualiser le cache IntelliSense n'aide pas.

35
Stijn

Fermer et redémarrer SSMS semble être le seul moyen de supprimer l’erreur. Après cela, je peux à nouveau créer la table avec succès.

81
Stijn

J'avais le même problème. Cliquez avec le bouton droit sur votre connexion au serveur et sélectionnez "Actualiser". Je l'ai fait et j'ai pu enregistrer la table recréée sans redémarrer SSMS.

7
user3556018

Pour changer cela, dans le menu Outils , cliquez sur Options , développez Designers , puis cliquez sur Concepteurs de tables et de bases de données . Activez ou désactivez la case à cocher Empêcher l'enregistrement des modifications nécessitant la recréation de la table .

6
Jafar Mortazavi

Créez la table avec un autre nom, puis renommez-la. L'actualisation du serveur n'a pas fonctionné pour moi. Vous pouvez cependant essayer de redémarrer Management Studios.

5
Zoheb

J'ai trouvé que vous avez juste besoin de fermer toute la tabulation «table de suppression» de SSMS et c'est fait

4
Sruit A.Suk

Cliquez avec le bouton droit sur le serveur, cliquez sur Actualiser et réessayez! A fonctionné à merveille pour moi. J'espère que la même chose fonctionne pour vous aussi.

1
Niranjan A

Assurez-vous de ne pas modifier les tables non enregistrées (il est préférable de fermer tous les tabulateurs et de réessayer)

1
stenly