Magento Database Diagram

The question:

I found this great diagram for Magento Database Tables, however, I would like to know if this is still up to date. I am running Magento 1.9. It was published in 2009 and several Magento updates have been rolled out since then. I am hoping that the database structure is still relatively the same. I’d like to get confirmation before I send it to the printer to get a large copy of it.

Diagram: MAGENTO_v1.3.2.4-Database_Diagram.pdf

Also, does anyone know where to find the table definitions? It would be a nice reference to go along with the diagram.

The Solutions:

Below are the methods you can try. The first solution is probably the best. Try others if the first one doesn’t work. Senior developers aren’t just copying/pasting – they read the methods carefully & apply them wisely to each case.

Method 1

It’s not up to date. There was a huge step in and many minor changes in the other 1.x updates.

Especially the sales and index tables are completely different now, I would not use this sheet as a reference anymore.

Unfortunately table definitions are not in one place but scattered around hundreds of install and upgrade scripts. You will find them in app/code/core/Mage/*/sql/*/*.php

You will notice that there is usually a install-1.6.0.0.php script that sets up everything for the current module and Magento 1.6. Start there and ignore all scripts with lower versions. Changes are incrementally added with scripts like upgrade-1.6.0.0-1.6.1.0 and so on.

Update: Thanks to Anna Völkl, there is a new complete database diagram for Magento 1.9.2.2:

enter image description here

Source: http://anna.voelkl.at/magento-ce-1-9-2-2-database-diagram/

Method 2

If you’re going to be doing a lot of custom database queries and relying on searches in the database, you should consider enabling Flat Product Table and Flat Category Table which creates a single category table and a single product table with columns for all attributes that are enabled for use in product page. This will require an index refresh. Both the flat table and the eav tables will both continue to be populated with data.

I wouldn’t too much stock in trying to learn the Magento database structure… there’s a function for almost everything you need to do.


All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

Leave a Comment