5

Nous avons un projet de base de données dans Visual Studio 2008 qui fonctionne très bien. À l'improviste, cependant, le déploiement a cessé de fonctionner. Ceci est l'erreur que nous obtenons:Visual Studio Database Edition: Qu'est-ce qui provoque "ModelException: au moins un identifiant attendu."?

EZTrac.Database.dbschema: Déploiement erreur TSD: Microsoft.Data.Schema.SchemaModel.ModelException: au moins un identifiant prévu.

Nous avons cherché partout en essayant de déboguer ce problème. L'exception qui est lancée dans la fenêtre Ouput est trop générique pour déchiffrer quoi que ce soit. Je sais que 'ModelException' est levé quand il y a un problème avec le modèle, mais je ne sais pas par où commencer.

Est-ce que quelqu'un sait ce qui pourrait causer cela?

alt text http://i33.tinypic.com/2r3ku9c.jpg

Edit:

Nous avons maintenant le soutien MSDN Premier sur la ligne à ce sujet. Cela fait environ 4 jours et ils n'ont pas été capables de le comprendre. Je mettrai à jour avec une solution si/quand j'en aurai un.

+0

Veuillez fournir les commentaires du premier ministre - Je suis intéressé de savoir ce qu'ils ont à dire à ce sujet! – SqlRyan

Répondre

1

Après beaucoup de va et vient avec le soutien de dépannage Microsoft Premiere, nous Nous avons été informés que nous avons trouvé un bug dans l'édition de base de données de Visual Studio. Nous avons abandonné avant d'être résolu et avons fini par mettre au rebut en utilisant la partie du projet de base de données dans notre solution.

La solution de contournement officielle de Microsoft consiste à déployer le projet de base de données à l'aide d'un compte qui est capable de voir le compte qui a accordé au compte de déploiement l'autorisation VIEW DEFINITION.

0

Avez-vous essayé de régénérer le projet de base de données à partir d'une base de données qui est actuellement à jour? Nous n'avons pas eu ce problème, mais si le projet contient uniquement des objets qui se déploient dans la base de données elle-même, vous devriez pouvoir le recréer à partir de la base de données dans l'autre sens.

Je sais que ce n'est pas idéal, mais je ne suis pas sûr de ce qui pourrait se désynchroniser ou disparaître de votre projet qui provoquerait cette erreur.

+0

Nous avons essayé cela, même problème. –

0

Votre service SQL est-il en cours d'exécution? Cela ressemble à une erreur que je reçois quand mon service meurt. Lorsque vous déployez le projet de base de données, il génère un fichier de script SQL (le nom de ce fichier est indiqué dans la fenêtre de sortie).

+0

Oui, ça fonctionne. –

0

Si vous ouvrez ce fichier, vous devriez être en mesure de commenter des blocs de code jusqu'à ce que vous compreniez ce qui ne va pas.

Une chose que j'ai découvert la dure est que le fichier post-Deployment.SQL fonctionne en mode SQLCMD et il n'ajoute pas une ligne vide à la fin de chaque fichier que vous appelez avec la syntaxe -

:r 'Filename.sql' 

donc vous devez physiquement ajouter des lignes vides à tous vos fichiers .SQL - Je l'ai même fait à ceux qui créent des tables, des indices, des contraintes, etc.

Questions connexes