Red Gate just released SQL Dependency Tracker, which is a sweet looking tool to visually track database and cross-database object dependencies.
It's nice to be able to point it to a table, for example, and get a quick visual representation of what that table depends upon. Here is a dependency diagram of the Books table I have been talking about in the two previous posts - SQL Server 2005 Example: Http Endpoints, XML Data Type, XQuery, XML Schema Collection, XML Indexes and SQL Server 2005 XML DML ( Data Manipulation Language ) and the XML Data Type

I have to spend more time with SQL Dependency Tracker to understand all the visual indicators, but all I can say is that I love how simple it is to use and how it makes child's play of the diagrams. Above is one of about 5 default diagrams, and I can manually move items around and choose to show or not to show dependencies as I like.
One of the things I noticed is that SQL Dependency Tracker picked up the BookIndex.exist and BookIndex.value XQuery commands in the FindBooksByKeyword Stored Procedure as dependencies, but is not quite sure what to make of them. They are marked as unresolved internal references. Not a big deal, since I really don't think of them as dependencies and would normally not display them anyway, but thought it was interesting.
I have another tutorial I wrote, called CLR Stored Procedure Calling External Web Service - SQL Server 2005 Tutorials, where I called an external XML web service from a CLR Stored Procedure. When I look at the dependency diagram for that I get:

SQL Dependency Tracker is missing a few dependencies here, but I am not sure I would expect it to find them. CLRWebServices.XmlSerializers depends upon ClrWebServices and the InsertLocation CLR Stored Procedure stores records in the Locations Table. My guess is that once you start going into the CLR, SQL Dependency Tracker may lose sight of some dependencies.
As a very visual person, all I can say is that I am going to love using SQL Dependency Tracker. You can export the digrams to PNG files ( or XML ) to give to team members and clients as well as use in presentations, etc., which will make it so much easier to present ideas and concerns to interested parties.
Very cool.
Posted
04-28-2006 8:16 PM
by
David Hayden