Database referential Integrity

Hello there,

How do gibbon enforce referential integrity.


Hello! Gibbon enforces a certain amount of integrity in PHP, and through the use of MySQL table indexes. However, as Gibbon traditionally used MyISAM as its MySQL table engine, there was no way (as I understand it) to enforce relationships. Over the past few versions we have enabled manual migration to the InnoDB database engine, which as of v21, now happens automatically behind the scenes. With this architectural work done, we can, at some point, begin to enforce such integrity more thoroughly within the database structure. When this will happen I am not sure, but do let us know if you wish to contribute. Thanks! Ross.

Its a good idea. If there is an ER diagram, it would be a plus to try out enforcing the relationship.

At the moment there is not, but we’ve been strict with foreign key names, and so it should be easy to identify the links should someone wish to put together an ER diagram. Sorry I can’t offer more here!