2010-09-26 5 views
2

Au travail, la base de données n'est pas documentée du tout. En outre, les procédures stockées, les fonctions et les vues sont toutes cryptées, ce qui exclut de nombreux outils qui documentent ces objets pour vous. Tout ce que j'ai sont les fichiers .SQL simples qui génèrent la base de données, les schémas, les tables, les fonctions et tout.Meilleur outil pour documenter les fichiers source * T-SQL?

Je voudrais savoir, existe-t-il un outil capable de lire ces fichiers et de générer une documentation de type Doxygen? De préférence open-source ou freeware.

J'ai trouvé que l'HyperSQL de IzzySoft et le projet PLDoc de SourceForge font quelque chose de très proche de ce dont j'ai besoin, bien que les deux semblent être très spécifiques à PL/SQL. Je veux quelque chose qui lit les fichiers source SQL (qui comprend les idiosyncrasies de T-SQL), les parse, et me fait:

  • Liste des SPs, des FDU, etc. définis dans chaque fichier
  • Liste des objets (à la fois tables/views et procs/functions) chaque objet dépend de (directement et, si possible, aussi indirectement)
  • Graphiques d'appel et de dépendances (c'est-à-dire, comment appeler et comment appeler quoi?)
  • Si possible, lorsqu'un SP utilise une table/vue, comment l'utilise-t-elle (INSERT/DELETE/UPDATE/SELECT/mix ???)

J'ai déjà développé un petit script Perl qui minimise l'analyse de ces fichiers en essayant d'obtenir le premier point - mais c'est juste un hack et il manque beaucoup de vernis. Je suis sûr qu'il doit y avoir un outil qui fait le travail, je veux croire que je n'aurai pas à le coder moi-même.

Merci à l'avance, Joe

+0

Je me demandais - Vous pouvez utiliser automatiquement les fichiers SQL dans le cadre d'un projet VS DB qui va les exécuter et publier une base de données pour vous - que vous pouvez utiliser l'un des outils standard pour documenter? – InSane

Répondre

1

Nous utilisons Red Gate SQL Doc à la nôtre générer. Cependant, cela fonctionne à partir d'une base de données et non de fichiers: il est plus facile de tout lire à partir des tables système (permissions, dépendances, types de données, etc.) que des scripts d'analyse. L'analyse des scripts est ce que le moteur DB fait ...

Ne pouvez-vous pas générer un DB vide à partir des fichiers sources (supprimer WITH ENCRYPTION) et générer à partir de cela? Ou décrypter si vous avez des droits sa?

+0

Oui, crêter une base de données vide à partir de fichiers serait plus facile. Le problème est: je n'ai pas accès aux scripts d'installation, qui connaissent l'ordre dans lequel exécuter les fichiers SQL. Je devrais définir les dépendances moi-même pour éviter de créer une table de détails avant l'en-tête ... –

+0

Avez-vous besoin d'inverser le cryptage alors? – gbn

+0

À l'heure actuelle, je n'ai pas d'autorisations SA, bien que je puisse être en mesure de demander une sauvegarde à restaurer avec un diff. nom et objets décryptés là. Les règles de sécurité sont un peu difficiles ici, donc les objets doivent être cryptés: S espéré aller de cette façon ne sont pas les seuls. –

Questions connexes