If you are using Visio 2010 and creating tables via the Database Model Diagram template, you may be surprised to learn there is not a way to build CREATE TABLE scripts from your resulting diagram. The last release that supported that was the Enterprise Architect version of Visio 2003, which required Visual Studio 2005 to be installed.
But there is help. There is an open source project from Alberto Ferrari that is an add-in for Visio 2010 that allows you to generate SQL Scripts from your database diagram. The resulting script has the create table statements, the alter table statements to add foreign key constraints and indexes, and even creates the code to drop objects if they already exist. Alberto’s blog post about it is here, and you can download the add-in at Visio Forward Engineer Addin (NOTE: I could not get it to install properly until I first installed Microsoft .NET Framework 4).
This saves me from having to do all my diagramming in SQL Server/Visual Studio 2010 or another product. I know there are other products out there that are much better for building database models, but to build a simple data model, Visio does the job and customers love its colors and the ability to open the model with Office when I need to discuss it with them.
Don’t forget there is a “Reverse Engineer” option in Visio to extract the database schema from an existing SQL Server database. Note that to use this you must first create an ODBC data source using the SQL Server Native Client driver and connect it to the database you wish to extract the schemas from.