可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
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.
回答1:
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:
- Embarcadero ER/Studio
- Visual Paradigm DB Visual Architect
- Altova DatabaseSpy
- Dezign for Databases
- Sybase PowerDesigner
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).
回答2:
This functionality is only available in the "for Enterprise Architects"-edition of Visio. This edition is apparently not sold as a stand-alone product, but it is included in MSDN Premium.
See this article on Office Online: What happened to the Generate and Update commands on the Database menu?
回答3:
Not free, but very good and simple to use: Dezign for Databases
Draw your model and then you can generate DDL for lots of different databases.
回答4:
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.
回答5:
Oh, and DBDesigner is pretty good, and free.
http://www.fabforce.net/downloads.php
回答6:
If you are referring to the Object Role Model diagrams, you can google for that, or for Terry Halpern.
I reverted to VisioModeler, which is available free (but unsupported) at
http://www.microsoft.com/downloads/details.aspx?familyId=27fe6786-a439-4286-b8b6-7a9b84cfa709&displaylang=en
回答7:
The 'big' ones are CA's ErWin and Embarcadero's ErStudio.
On a side-note, Microsoft appear to have realized the need for modelling tools so they're working on some new modelling tools ("Oslo") that will [probably] be included in VS 2010.
回答8:
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.
回答9:
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.
回答10:
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.
回答11:
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.