Hi Edward,
I think the explanation under the question mark in the builder is already clear:
None : Keep object with his broken key.
Reset : set to 0.
Cascade : delete all objects from this table that refers to it.
An example with two tables:
TableA
TableB: Foreign key TableA_id.
If you delete in TableA a record with TableA_id value 1 the process is:
None:
Records in TableB keeps there reference to TableA_id 1. A result could be that views will not work or at least misses data from TableA because the record does not exist anymore.
Reset:
Records in TableB with TableA_id value 1 will be reset to 0. Same result as above but it is easier to capture the 'wrong' records.
Cascade:
Records in TableB with TableA_id value 1 will be deleted. Dangerous because all records with the TableA_id reference will be deleted in TableB. Important to build in a warning or an extra confirmation of the user.
Hope this will help you.
Best Regards,
Adriaan