What is Referential Integrity?

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


Please Help Members By Posting Answers For Below Questions

what are the maximum number of rows that can be constructed by inserting rows directly in value list? : Transact sql

509


Does a user_objects view have an entry for a trigger?

577


what are dynamic queries in t-sql? : Transact sql

568


Why cannot I use bind variables in ddl/scl statements in dynamic sql?

679


What are the different sql commands?

532






What is sqlerrm?

559


Can we use the cursor's to create the collection in PL/SQL?

524


What are the most important ddl statements in sql?

590


Explain some predefined exceptions.

598


What is set serveroutput on?

658


which tcp/ip port does sql server run on? : Sql dba

525


What is the syntax to add a record to a table?

583


Is sql a programming?

554


How do I save a stored procedure?

536


what are all types of user defined functions? : Sql dba

556