Steve Hebert's Development Blog

Sponsors

The Lounge

Wicked Cool Jobs

Currently Reading

My Amazon Wish List

Advertisement

Images in this post missing? We recently lost them in a site migration. We're working to restore these as you read this. Should you need an image in an emergency, please contact us at imagehelp@codebetter.com
Sql Dependency Viewer and large database projects

I’ve been playing with Red-Gate’s Sql Dependency Viewer which is currently in Beta.  During this beta period, Red-Gate  is allowing people to download the tool for free.

 

I’ve run into a few dependency viewers based on sysdepends in various blogs, but I’ve always run into problems with one project I worked on.  The database had so many stored procs, functions and tables that these tools never completed their work after running overnight.  I decided to turn Sql Dependency Viewer on this project and see what it could do. 

 

I was impressed that it took 20 seconds to read all dependencies.  While the resulting graphical view was nearly unreadable – it looked like something out of Microsoft’s free code profiler for .Net – but it still had a number of extremely useful functions. 

 

I can give it any object name to search for and it immediately displays the object in question.  When looking at a stored proc, I can immediately see which stored procs are calling it, what stored procs and functions it is calling, what tables it is reading from and what tables it is writing to.  This view is extremely useful in a large project. I would have loved to have had this tool when I first started working on it. 

 

It’ll be interesting to see this tool progress and any improvements to the graphical display.


Posted Thu, Oct 20 2005 10:39 AM by shebert

[Advertisement]

Comments

Raymond Lewallen wrote re: Sql Dependency Viewer and large database projects
on Thu, Oct 20 2005 12:24 PM
Steve,

My take on the product was different from yours. See the following email I sent to Red-Gate per the dependency viewer app:

Why not produce reports from the dependency viewer? I currently have T-Sql code written to produce text based dependency reports that have to be generated at every release cycle. The code is easy enough, and if you have to analyze everything to produce the graph, why not have the ability to produce a report as well? Even if you just produce and XML report, its something we can use to pull in and format to our own specifications.

Dependency reporting is a must-have for someone like me. When your database is very large, the graph becomes useless because you can't follow all the objects. What if you're dealing with a database with 1000+ stored procedures and 200+ tables (not so uncommon)? You can see how it gets out of hand for larger databases. You just can't use the graphs for applications that are of any significant size. Reports based on the graph would be much more useful, and in all honesty, not hard at all to implement into your product.
shebert wrote re: Sql Dependency Viewer and large database projects
on Thu, Oct 20 2005 1:32 PM
That's a really good point. I like the idea of a report as well - I just never found a routine that would work with my database. I once let one run once for 14 hours and it never finished.

Even more, I'd like something where I can start with one object, follow the dependencies and build the graph as I go. This way I can hide the unrelated details or at start at one point rather than starting with everything in the view.

I dropped this note on their message board. I think the text report is a very good idea - I hope they also include some other tools for viewing the graphical portions more effectively.
Raymond Lewallen wrote re: Sql Dependency Viewer and large database projects
on Thu, Oct 20 2005 1:52 PM
Steve,

Here is a link to a post that has the code I use for my dependency reports.

http://codebetter.com/blogs/raymond.lewallen/archive/2005/02/16/51035.aspx

Devlicio.us