Answer Posted / iain hambleton
Expanding on the two previous explanations, imagine any
parent/child relationship, for example a manufacturer and
product relationship that a retailer would have in it's
inventory system. Obviously any product must have been
manufactured by someone (i.e. a product cannot exist
without a manufacturer). Imagine then if in the inventory
system above, some muppet deleted records from the
manufacturer table. This would lead to products existing
in the system without a corresponding manufacturer record -
this is logically inconsistent data (as it does not fit
with the real world situation that the data is trying to
model).
If a foreign key constraint were to have been placed
between the two tables, then the muppet from above would
either have been unable to delete the manufacturer records
without first visiting the products table and deleting all
products that particular manufactures made or when the
manufacturers were deleted, all products linked to them
would have been automatically deleted also (this latter
situation is called a cascade delete – powerful and
dangerous stuff).
Either way, the remaining data would have been left
consistent with the real world manufacturer/product
relationship (though of course large swathes of data may
still have been deleted).
Is This Answer Correct ? | 6 Yes | 0 No |
Post New Answer View All Answers
What are all ddl commands?
What is a database trigger?
how would you enter characters as hex numbers? : Sql dba
What does the acronym acid stand for in database management?
What are the types of sql commands?
What are the types of records?
Can unique keys be null?
how to rename an existing table in mysql? : Sql dba
Can we perform dml in function?
what are sequences
What is the usage of when clause in trigger?
how many tables will create when we create table, what are they? : Sql dba
What is difference between primary and secondary key?
How to convert comma separated string to array in pl/sql?
What are the main features of cursor?