[ANN] Visual Migration Design Tool

For a really long time, I’ve been using DBDesigner from FabForce.net.
For those of your who’ve never used it, its a freeware visual
entity-relationship diagram tool, which allows you to make database
designs visually instead of in SQL DDL. You can then use it to generate
the SQL to make your databse design into reality, or even run a
“synchronize” to make any changes you’ve made to the data model
reflected in the database.

Unfortunately, DBDesigner is no longer supported; I understand the
designers have went to work for MySQL on MySQL Workbench. I’ve been
limping along with DBDesigner for some time now, and then I discoverd
migrations.

I liked the functionality of migrations, but sure didn’t want to give up
my pretty intereface. So, it occurred to me that I could write my own
for working with migrations.

WebERD (working title) is the result of that idea. It has a visual
database designer, using lovely AJAX and Scriptaculous stuff to make it
appear more like a desktop app. Currently, it will generate (somewhat
crippled) migrations from the schema you draw.

I’ve put a decent chunk of hours in on this project, and I’m at a point
where I’d like to see some feedback on what I’ve done so far. If you hop
over to http://test.bryanduxbury.com:8004 (textdrive proxy issues
there…), sign up for an account (please use your email address as the
login), and create a project, I’d appreciate what you all have to say
about the app.

Feature suggestions will be duly considered, and bug reports would be
great. It’s still pretty rough, but I’m pleased with how well it works
for as long as I’ve worked on it so far.

One caveat: for some reason, the app doesn’t work in Firefox. When an
AJAX call is made, Firefox actually crashes. If anyone could suggest a
path to follow to fix this problem, that’d be swell.

Thanks,

Bryan D.

Thanks for the trace. However, how does one “try #firefox on freenode”?
I’m a bit of a noob when it comes to IRC.

Anyways, there’s 39 people signed up, lots of project, etc, but only one
comment? Some of you must be using IE, right?

Firefox here. No crashes, but the table builder didn’t really work.
Nothing visible happens. Exiting and re-displaying a project shows the
change but positioning is way off and none of the editing features work.

Bryan D. wrote:

Thanks for the trace. However, how does one “try #firefox on freenode”?
I’m a bit of a noob when it comes to IRC.

Anyways, there’s 39 people signed up, lots of project, etc, but only one
comment? Some of you must be using IE, right?

One caveat: for some reason, the app doesn’t work in Firefox. When an
AJAX call is made, Firefox actually crashes. If anyone could suggest a
path to follow to fix this problem, that’d be swell.

it also crashes Kazehakase, built against Mozilla 1.7.13. i dont have an
answer for this. maybe try #firefox on freenode. im sure they want to
debug their javascript engine (maybe check out the nightly builds of
firefox 3.0 and see if its fixed first)

#0 0x00002b1aa426fc0c in js_CheckRedeclaration () from
/usr/lib64/mozilla/libmozjs.so
#1 0x00002b1aa4279f17 in js_Interpret () from
/usr/lib64/mozilla/libmozjs.so
#2 0x00002b1aa427bd1f in js_Execute () from
/usr/lib64/mozilla/libmozjs.so
#3 0x00002b1aa4286df0 in js_InitObjectClass () from
/usr/lib64/mozilla/libmozjs.so
#4 0x00002b1aa427c4d2 in js_Invoke () from
/usr/lib64/mozilla/libmozjs.so
#5 0x00002b1aa427854d in js_Interpret () from
/usr/lib64/mozilla/libmozjs.so
#6 0x00002b1aa427c524 in js_Invoke () from
/usr/lib64/mozilla/libmozjs.so
#7 0x00002b1aa427854d in js_Interpret () from
/usr/lib64/mozilla/libmozjs.so
#8 0x00002b1aa427c524 in js_Invoke () from
/usr/lib64/mozilla/libmozjs.so
#9 0x00002b1aa427854d in js_Interpret () from
/usr/lib64/mozilla/libmozjs.so
#10 0x00002b1aa427c524 in js_Invoke () from
/usr/lib64/mozilla/libmozjs.so
#11 0x00002b1aa42703f9 in js_InternalInvoke () from
/usr/lib64/mozilla/libmozjs.so
#12 0x00002b1aa424ac19 in JS_CallFunctionValue () from
/usr/lib64/mozilla/libmozjs.so
#13 0x00002b1aa4d34ffe in NSGetModule () from
/usr/lib64/mozilla/components/libgklayout.so
#14 0x00002b1aa4d421aa in NSGetModule () from
/usr/lib64/mozilla/components/libgklayout.so
#15 0x00002b1aa4d423ed in NSGetModule () from
/usr/lib64/mozilla/components/libgklayout.so
#16 0x00002b1a9ecdd143 in nsTimerImpl::Fire () from
/usr/lib64/mozilla/libxpcom.so
#17 0x00002b1a9ecddbb5 in handleTimerEvent () from
/usr/lib64/mozilla/libxpcom.so
#18 0x00002b1a9ecd9be9 in PL_HandleEvent () from
/usr/lib64/mozilla/libxpcom.so
#19 0x00002b1a9ecd9eb2 in PL_ProcessPendingEvents () from
/usr/lib64/mozilla/libxpcom.so
#20 0x00002b1a9ecdb887 in nsEventQueueImpl::~nsEventQueueImpl () from
/usr/lib64/mozilla/libxpcom.so
#21 0x00002aaaaba3f7e2 in ?? () from
/usr/lib64/mozilla/components/libwidget_gtk2.so
#22 0x00002b1aa0f53c59 in g_main_context_dispatch () from
/usr/lib/libglib-2.0.so.0
#23 0x00002b1aa0f56dc5 in g_main_context_check () from
/usr/lib/libglib-2.0.so.0
#24 0x00002b1aa0f570c6 in g_main_loop_run () from
/usr/lib/libglib-2.0.so.0
#25 0x00002b1a9f8c0512 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#26 0x0000000000403d0e in ?? ()
#27 0x00002b1aa0adc134 in __libc_start_main () from /lib/libc.so.6

as for the actual editor. sure i’d like to try it out… maybe one day
:slight_smile:

Hi!

On May 1, 2006, at 8:01 PM, Bryan D. wrote:

designers have went to work for MySQL on MySQL Workbench. I’ve been
make it
login), and create a project, I’d appreciate what you all have to say
Thanks,

Bryan D.

Looks like a fun idea Bryan. Unfortunately I can’t get it to work in
either safari, firefox or IE5 on OSX. I get to the design page and
see the menu at the top but nothing happens and I can’t click
anything. What am I supposed to see. Does this only run in IE on
windows?

-Ezra

Nice effort, Bryan. I was able to create/edit one table but nothing
after that. I was IE6, but it was giving me problems with FireFox as
well. I could also create the migrations file. It looks pretty cool.
Keep up the good work, and I am sure it will be a very helpful tool.

Thanks,
Rupak Ganguly
Webintellix
Blog: http://developershelf.blogspot.com

Gave it a shot. Looks like there are some display issues to be
adressed. Firefox is not rendering anything on the design page.

Jin

I got around the Firefox crashing issue by upgrading to the latest
Firefox.

I haven’t tested my app on a Mac yet, so I can’t comment on how well it
would work there.

My next effort on the app will be to add more significant instructions
so you guys can actually find your way around.

Slightly off topic, anyone know a good javascript dropdown menu system?

Ok, I managed to get through the crashes of my Firefox by upgrading. I
spent a couple hours making all the bugs that showed up in Firefox go
away, and now it works. Check it out.