Chris Hartjes wrote:
I use a whiteboard, dry-erase markers and paper to do my database design work.
Sounds like I'm in the minority. ;)
Chris, I hear ya! I work in the same fashion. I find it easier to
expose the design by feeling it out using basic tools. Being able to
quickly and easily make numerous changes is key for me. The problem
with the whiteboard is that you can't move things around easily!
I've been using an online diagramming tool called Gliffy
(www.gliffy.com) to quickly draw tables and link them together to show
relationships. It works well and is kinda fun to use. Although I never
used Visio, I guess this is a similar type of product. I also did some
workflow diagrams which will really help me design the front end. I
think I'll diagram my living-room next :P
I now have a good road map to use as a design guide for implementing my
database.
Now, for actually creating the tables, I'll probably use a combination
of phpMyAdmin and plain text scripts. (I often use phpMyAdmin to
generate scripts from existing tables and then edit them in a text
editor, (EditPlus is my favorite) to create new ones).
After the database is complete, I'll use DBDesigner4 to generate a real
database diagram using it's reverse engineering feature. I had tried
using MySQL Workbench for this in the past, but I couldn't get it to
work. When searching the net for help on resolving this, I saw where
someone recommended DBDesigner4 instead
(http://www.fabforce.net/dbdesigner4/) and it looks excellent. The GUI
is really nice as are the diagrams it creates. I was going to use this,
but found I didn't need all it's features during the initial design
process. What I needed was something more simple and agile (enter
Gliffy).
In CakePHP, your database relationships are by convention, and are
defined in the Model, not formally in the database. Therefor, you don't
actually define foreign keys in the database (I hope I'm right on this,
because that's the way I've been doing it so far). So when I use
DBDesigner4 to reverse engineer my database, it won't draw any
relationship lines. That's why I used a simple generic diagramming tool
to indicate my table relationships...it's more of a high-level
"roadmap" of my DB.
Some other MySQL tools I have installed and tried are SQLyog and
Navicat MySQL. Both seem to work pretty well.
I'm new to CakePHP and have only done small projects in php. I'm in the
early stages of my first serious project on a LAMP/WAMP stack and have
chosen CakePHP to help me do things right. These kinds of threads
really help me out in fine-tuning my development environment tools,
methods and practices. There's always room for improvement.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Cake
PHP" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---