<p>Do you generate your data dictionary? If so, how?</p>

<p>I use extended procedures in SQL Server 2005 to hold onto table and field information. I have some queries that create a dictionary out of them, but it's ... meh.  Do you have a particular query or tool you use? Do you generate it off of your database diagrams?</p>

<p>Googling for "data dictionary sql server" comes up with many queries, but they're all about equally as attractive. Which is to say, good starting off points, but not production ready.</p>

I generate it from
```
INFORMATION_SCHEMA
```
views plus other tables of metadata which are application specific.
I also use wildcard searches of
```
INFORMATION_SCHEMA.ROUTINES
```
in order to track usage patterns within code and identify unused columns and tables.
This article just showed up in one of my news feeds:
http://www.mssqltips.com/tip.asp?tip=1619