I've been using Visio 2002/2003 Enterprise Architect to do my database schema design visually and then forward-generate the DDL to create the database.
I wanted to switch to Visio 2007, but while it does have database diagramming support, it doesn't have the ability to generate DDL. Bummer.
I am really disappointed because it seems like Microsoft has completely abandoned this feature. You can't do it in Visual Studio (that I've found). You can sorta do it with SQL Server Management Studio if you insert database diagrams into your database, but any edits to the schema immediately take effect.
Has anyone found a good program to do this? I'm hoping to find one that is free and can generate DDL/SQL for SQL Server.
Visual Studio 2010 Beta 1 has some pretty cool tools for data modeling, especially the ADO .Net Entity Data Model Tools. And yes, you can generate DDL from the models.
Unfortunately, I have recently faced the same problem, hoping that MS would provide a new version of Visio Enterprise Architect since I have used it FOREVER to do ERDs/database design. Since this does not seem to be forthcoming from them however, I have been forced to research other tools. The ones I checked out included the following:
Also, I tried to check out DevGEMS Data Modeler but kept getting "the setup files are corrupted" after downloading it. I never considered ERWin as the interface seems too old school/legacy plus it is too expensive. Just when I had almost given up all hope of finding a well-rounded but [relatively] cheap alternative I came across ModelRight. I find it curious that I haven't heard more about this company given that their product is EXCELLENT and inexpensive (under $1000 for multi-DB support or under $500 for a single DB type) compared to other high-end DB modeling tools. Further, the company was founded by one of the first developers to work on ERwin (see their company's "About" page for more info).
To make a long story short, if you want to save yourself a day's worth of research on this subject, check out ModelRight FIRST and go from there. BTW, for full disclosure - I have no affiliation with the ModelRight company! ;^)
P.S. - From what I can tell currently, VS 2010 isn't going to offer a full DB modeling environment but only enough to support the Entity Framework which I am not currently sold on (especially having spent the time to roll my own ORM layer).
I recommend Sybase Power Designer
It's easy to use, intuitive, offers partial SQL DDL preview (for selected objects) and uses scripts for automation. The scripting feature is not very well documented, but after reading some of their sample scripts I was able to do what I wanted.
I use Sparks Enterprise Architect. It can create the basic by taking all your database with an ODBC than you can design and reverse change too. It's not free.
I got tired of hand-coding my DDL from Visio 2007 Diagrams, so I wrote a script to do it for me. I know it's not perfect. But, it works for me. You are welcome to try it out at aboutwhatever.net/posts/visio-2007-database-model-ddl-generation. If there is enough interest, I will look into expanding it's capabilities.
I found Visio to be useful for 2 things:
1) Flows (flowcharts, wireframing, sitemaps) 2) Reverse engineering Databases
other than that, it's really of no use. But still valuable for those things.
Enterprise Architect is the only way to go with DB Modeling.