hannibal Posted February 23, 2008 Share Posted February 23, 2008 I know that foriegn keys are useful in that if I delete (i.e.) a Customer, all records in tables with his/her foreign key with On Delete (Cascade) will be deleted. Excellent from a maintenance point of view. My question is what overhead on the (database) system is there by having foreign keys? Thanks, J. I am using MySQL V5. Link to comment https://forums.phpfreaks.com/topic/92603-foreign-key-overhead/ Share on other sites More sharing options...
fenway Posted February 23, 2008 Share Posted February 23, 2008 It means there are a lot of extra check to do for every update/delete operation. Link to comment https://forums.phpfreaks.com/topic/92603-foreign-key-overhead/#findComment-474647 Share on other sites More sharing options...
hannibal Posted February 23, 2008 Author Share Posted February 23, 2008 Even if On Update = No Action? Thanks, J. Link to comment https://forums.phpfreaks.com/topic/92603-foreign-key-overhead/#findComment-474818 Share on other sites More sharing options...
fenway Posted February 24, 2008 Share Posted February 24, 2008 Then why have it there? Link to comment https://forums.phpfreaks.com/topic/92603-foreign-key-overhead/#findComment-474902 Share on other sites More sharing options...
hannibal Posted February 24, 2008 Author Share Posted February 24, 2008 I have: On Update = No Action On Delete = Cascade So that if a customer is deleted, the rest of the non-needed data in other tables is also removed as part of the housekeeping. If a customers record is updated, none of the other tables require any action. This saves me manually looping through other tables and deleting all records if a customer is deleted. There is nothing wrong with this method is there? Seems logical to me... Thanks, J. Link to comment https://forums.phpfreaks.com/topic/92603-foreign-key-overhead/#findComment-474978 Share on other sites More sharing options...
fenway Posted February 25, 2008 Share Posted February 25, 2008 No, seems great. Link to comment https://forums.phpfreaks.com/topic/92603-foreign-key-overhead/#findComment-475566 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.