views:

1184

answers:

10

I am quite happy to code out tables by hand when making a database but it's not the easiest way to convey information about a database to someone else, especially someone that's not so comfortable coding the tables via a script and would instead use something such at phpMyAdmin.

Is there thus a free program (for me to use it it'll have to work on a Mac but feel free to suggest PC apps for others with the same Q) or script (preferably in PHP or Python) that allows you to design database structure and will then output either a basic diagram or the code as chosen by the user?

+2  A: 

You could try out MySQL Workbench which originates in the open source dbdesigner. There's a free community edition available. You can design the database via er-diagrams or reverse engineer an existing database.

Chris M.
You can download this from http://dev.mysql.com/downloads/workbench/5.0.html.
David Medinets
Sadly it is only available for Windows.
David Medinets
+7  A: 
Matt
Which version of Visio do you need these days?
Rory
+3  A: 

I'm a big fan of ARGO UML from Tigris.org. Draws nice pictures using standard UML notation. It does some code generation, but mostly Java classes, which isn't SQL DDL, so that may not be close enough to what you want to do.

You can look at the Data Modeling Tools list and see if anything there is better than Argo UML. Many of the items on this list are free or cheap.

Also, if you're using Eclipse or NetBeans, there are many design plug-ins, some of which may have the features you're looking for.

S.Lott
ArgoUML has a nice web start ability located at http://argouml-downloads.tigris.org/jws/argouml-latest-stable.jnlp. Since it is Java-based it will run on nearly all platforms.
David Medinets
+1  A: 

I always have enjoyed Eclipse. There are a few plugins for it that look like they will do what you want.

Steve g
+2  A: 
GateKiller
+4  A: 

Open System Architect has some potential. Its very similar to Visio.

http://www.codebydesign.com/SystemArchitect/downloads/ - there is a linux version. Unzip the gzipp'ed file then run bin/OpenSystemArchitect. If anyone can try this on a mac, I'd like to know the result.
David Medinets
+3  A: 
Peter Turner
+1 very nice for Documentation. I really love it. Thank you!
bastianneu
+1 for the pencil/paper route. :) I find it much faster too - for brand new development.
Optimal Solutions
+1  A: 

SchemaBank (a web-based SaaS vendor) can turn your ER design into SQL statements for MySQL and PG. Can't do graphics export yet though. The nice thing is you don't need to install anything ('cos its browser-based) and it costs virtually nothing. You should be able to share your design to other people too.

Edison
+2  A: 

MySQL Workbench is the best DB design tool that I've tried

Thang Nguyen
does it work with dbs other than just mySql?
Rory
I have never try with other DB but I think it work well because you can export the design to a SQL file. You can use it to import to other DBs.
Thang Nguyen
A: 

SQLDeveloper from Oracle can work with Oracle and MySQL database.

http://www.oracle.com/us/corporate/press/020861

Miro A.