I use MySQL Workbench http://www.mysql.com/products/workbench/ to model databases graphically and I find it a useful productivity tool.
However, these days I am increasingly using Doctrine 2 to provide transparent persistence of PHP entities within my systems. I need to describe my databases in terms of Doctrine entities and associations. I can do all that by hand, however this is not a pleasant prospect for large databases.
There is a tool that creates your Doctrine entities for you via the PHP command line.
Download it from: https://github.com/johmue/mysql-workbench-schema-exporter
I'll be trying it out for size over the next few days!
I received some help from a fellow freelancer on the subject of Drupal 7 paging. He has blogged about this here: