web-dev-qa-db-fra.com

Reverse engineering pour la création de diagrammes de base de données dans Visio avec SQL Server 2008

Je dois procéder au reverse engineering de Microsoft SQL Server 2008 pour créer un diagramme de modèle de base de données Microsoft Visio 2007. J'ai donc choisi "Reverse engineering" dans le menu Base de données pour me connecter à la base de données.

J'ai configuré le pilote Microsoft SQL Server Visio afin qu'il utilise SQL Server Native Client 10.0 comme pilote ODBC. Ensuite, j'ai créé un DSN utilisateur qui se connecte à ma base de données. Ce DSN fonctionne (au moins le test fourni est réussi). Après avoir cliqué sur Suivant dans l'assistant d'ingénierie inverse, Visio demande aimablement mes informations d'identification que je fournis correctement, mais après avoir cliqué sur OK, je reçois le message suivant:

Le pilote Visio actuellement sélectionné n'est pas compatible avec la source de données.

J'ai essayé d'utiliser l'ancien pilote SQL Server ODBC, en reconfigurant également le pilote Visio, bien sûr. Cela ne marche pas trop. 

42
Matthias Meid

De support Microsoft via les forums Microsoft:

Une enquête plus approfondie révèle que ce comportement est attendu pour Visio 2007. Lorsque Visio ouvre une connexion à l'aide du pilote Visio SQL Server, il vérifie la version du serveur. Depuis SQL Server 2008 expédié après Visio 2007, SQL Server 2008 n'est pas reconnu comme version ferme la connexion. Vous pouvez attendre l'envoi d'une version future de Visio qui reconnaisse SQL Server 2008 ou utiliser le pilote Visio Generic ODBC, qui peut ouvrir des connexions à SQL Server. Une troisième option consiste à utiliser une copie de SQL Server 2005. pour l'ingénierie inverse initiale. L'équipe Visio est consciente de ce problème.

31
Paul Hargreaves

Pour connecter Visio 2007 à une base de données SQL Server 2008, exécutez l'ingénierie inverse Wizard (base de données/ingénierie inverse...) Dans Visio 2007, sélectionnez le pilote générique ODBC dans le menu déroulant "Pilotes installés" . Créez ensuite une nouvelle source de données à l'aide du client natif SQL (2005.90.4035, 2005 SP3). Vous recevrez un avertissement indiquant que certaines informations récupérées peuvent être incomplètes. Cliquez sur OK et continuez. Ce n'est pas la solution la plus intuitive (mais pas difficile), mais au moins, cela vous permettra d'utiliser Visio 2007 pour vous connecter à SQL 2008.

Chip Lambert, Slalom Consulting

33
Chip Lambert

Un ancien thread, mais toujours un problème d'actualité ... J'ai constaté que, bien que l'utilisation du pilote générique ODBC fonctionne, l'outil de reverse engineering manque ensuite les déclencheurs, les clauses de vérification, les vues et les procédures stockées. En spécifiant plutôt le pilote Access Visio, nous récupérons au moins les clauses de vérification et les vues.

En général, cependant, je dois dire que cela montre un manque de respect effroyable envers leurs clients de la part des équipes concernées de Microsoft. L’an dernier, lors de la mise à niveau vers Visual Studio 2010, j’ai eu une expérience très similaire, mais j’ai découvert que mes projets SSIS n’étaient plus ouverts ... comme on peut le voir dans ce fil , MS se moquait bien de tout.

8
Ed Graham

Vous pouvez créer un DSN utilisateur dans l'utilitaire Administrateur de source de données ODBC, puis vous connecter à votre instance de MSSQL 2008 via Visio 2007 en sélectionnant le pilote générique ODBC au lieu du pilote Microsoft SQL Server.

Vous pouvez également essayer les compléments de Data Mining de SQL Server 2008 pour Office 2007.

Prenez-les ici: http://www.Microsoft.com/downloads/details.aspx?FamilyId=896A493A-2502-4795-94AE-E00632BA6DE7&displaylang=en

J'espère que ça aide!

À votre santé

4
Marlon

J'ai fini par utiliser le fournisseur de base de données générique OLE au lieu du pilote générique ODBC pour se connecter à SQL Server 2008 - les types de données semblaient bien passer.

3
Jeremy Thomas

J'ai aussi eu ce problème comme ci-dessus ce que j'ai trouvé a travaillé 

  1. utilisait l'assistant de reverse engineering 
  2. en utilisant le fournisseur générique OLE Db dans la première étape 
  3. puis définissez le fournisseur de connexion sur l'étape suivante vers le plus haut pilote natif SQL indiqué (j'utilise SQL2016 avec SQL natif 11.0 sur une surface Windows 10 pour 4 référence ) 
  4. puis entrez la destination et les informations d'identification correctes dans l'onglet de connexion (testez la connexion si vous n'êtes pas sûr)

    et cela a semblé fonctionner pour moi, (j'ai alors eu la capacité de faire passer à travers des tables des indexes de vues des clés primaires et étrangères et des procédures stockées ).

J'ai aussi constaté que la visio n'arrêtait pas de m'enfermer sur moi ... apparemment c'est courant (et là je me sentais spécial) après que j'en ai finalement eu marre que j'ai regardé ces liens 

https://dhondiyals.wordpress.com/2011/07/29/Microsoft-visio-2010-crashes-very-frequently-resolved/

https://answers.Microsoft.com/en-us/msoffice/forum/msoffice_visio-mso_windows8/visio-2010-frozen-on-surface-pro/df1df27a-6585-4b0c-8442-a4363c541e08

J'ai trouvé que mon problème se trouvait dans la dernière version (application en cours d'exécution sur écran tactile et écriture manuscrite). Alors l'a terminé, et j'ai maintenant l'expérience que je m'attendais 

0
user5820