Renommer les résultats de la table dans l'instruction CREATE plutôt que dans ALTER

Dans un .sqlproj j'ai changé le nom d'une table (parmi d'autres changements). J'ai fait le changement de nom dans Visual Studio 2012 en utilisant l'option 'refactor'. Lorsque j'essaie de publier les modifications, le script de deployment a une command CREATE TABLE plutôt qu'une command ALTER TABLE pour le changement de nom de la table. Qu'est-ce que je fais mal ici?

Je suis à la racine de mon problème. La database à laquelle je publiais le script était une copy (bacpac) de la vraie database. Bacpac manquait la table dbo .__ RefactorLog, donc lors de l'exécution du script, il ignorait le file refactorlog et créait simplement la database.

Vous modifieriez quelque chose qui existe déjà, puisque le script crée la table que vous auriez dû laisser comme CREATE TABLE vous changez le nom dans le script ne fait rien mais essaye de changer le nom d'une table qui n'existe pas ce qui entraînera évidemment une erreur .

De plus, si vous avez déjà une table appelée foo et que vous souhaitez changer son nom de foo en say bar vous n'utiliserez pas la command Alter table mais la procédure système suivante.

 EXECUTE sp_rename 'dbo.foo', 'bar'