Blake Perdue - Website & app reviews, and technology & startup commentary

App Review: SQLEditor

November 16th, 2008 in Apps, Site Review, Web/Tech

An integral part of build any web app is database design. Creating the right tables, fields and relationships you need to store and control the app’s data can be a difficult task. Enter SQLEditor, a database design app for Mac OS. For PC users, I hear MySQL Workbench is quite good.

SQLEditor makes it easy to design a database. You can quickly create tables, add fields, edit field attributes and determine relationships between tables. SQLEditor’s visual display helps you understand the relationships between your data.

For example, I’m building a simple, web-based task management app that makes it easy to manage to-do lists (more on this later). Here’s what the database design looks like.

As you can see, I have three tables (users, lists and todo) with various data fields and 1-to-many relations between users and lists, and lists and todo. That is, one user can have many lists and each list can have many to-dos on it.

After visually creating the database, SQLEditor can then export directly to a database or it can export SQL commands to a file. Here’s the SQL commands needed to create my database.

These commands could be written by hand, especially for simple databases like the one I’m using in this example. However, for large, complex databases, database design tools like SQLEditor are indespensable. They remove alot of the work in building databases for web apps.

What do you use to build your databases?

Comments

this is a very useful tool which will make the creation of complex SQL tables easier. the automated command generation is brilliant.

maitreya on November 16th, 2008

This would have been a godsend when I was in college and learning PHP/MySQL from scratch for the first time. Typing in MySQL commands by hand is tedious and the slightest mistake can ruin any coders day. A application like this that takes care of the tediousness of coding seems invaluable. You mention its usefulness for complex databases, but I would also argue that it is an excellent tool for novice coders. The interface and graphical representation of the databases would be useful for novice coders, and having such a program would eliminate many of the depressing coding errors that manage to bog down even the most experienced coders.

Anthony Westover on November 16th, 2008

I have studied IBM Mainframe and knows how important SQL is. It is very tedious to write the code without making mistakes. I think SQLEditor could be useful when lots of tables and data are involved.

vidula ashok on November 17th, 2008

I’ve used Microsoft Access before to make databases. When the database file becomes too big the program becomes so slow. It is quite easy to learn and use though. SQLEditor seems to be an easy way to transition from Access to mysql.

hanawriter on November 17th, 2008

I haven’t previously used SQL Editor, but I am going to explore the idea of doing so now. Thanks!

Sam on November 17th, 2008

This is a more user friendly application, better than the tools that come from SQL Server.

Though this will likely need to be able to create sql that is specific to the different flavors of SQL: MS SQL Server, MS Access, Foxpro, Sysbase,etc.

chris t on November 17th, 2008

A UI tool like SQL editor is always useful. For complex databases the development start from the ER diagrams and a utility which can convert the diagram to the tables is really useful. It can save lots of time, its importance can be really appreciated in time critical development. It has the potential to remove lots of typos that we inherently make.

ratan on November 18th, 2008

I really think this could save me a ton of time designing table structures, thanks for the link!

PlexXoniC on November 18th, 2008

While I am not a Mac user this tool looks very similar to tools similar to many Entity/Relationship modeling tools that currently exist for the Wintel platform.

ER Diagrams are useful for the simple reason that a picture is worth a thousand words. A graphical representation is easier to look at and understand than SQL DDL statements.

It looks like SQLEditor is a tool that allows you to create a graphical representation of your database and then create the SQL DDL (Data Definition Language) statements to create that actual tables in a target database.

Again, I am not very familiar with the Mac environment and am not aware of any similar tools, but I would have to think they exist.

Andrew P. Gurzynski on November 18th, 2008

This type of tool is also incredibly valuable for LEARNING about data modeling. While I knew the basics from books, it was really ER-win (the grand-daddy of the data modeling space) that taught me the ins/outs of modeling.

When evaluating such tools there are a couple of really important features to consider:

- does the tool support multiple database vendors? (while this may not seem important b/c your website runs XYZ database today… the ability for your tool/skillset to be transferrable for your next gig is invaluable)

- does the tool do reverse-engineering of existing schemas? (and allow foreign key inferences)

- does the tool support views, and sub-types (both complete and incomplete) in the modeling interface?

- can the tool generate ALTER statements so that existing databases can be easily updated (instead of creates)?

One feature I really liked about ER-win was that if I had an existing schema and I made changes to it, ER-Win would actually generate not just the DDL, but also the scripts that migrate the existing data to the new schema. That was amazing!

Matthew Quinlan on April 21st, 2009

Post a comment