Skip to main content

4. Referential integrity




§ It is a database concept that ensures that relationships between tables remain consistent. When one table has a foreign key to another table.
§ Theconcept of referential integrity states that you may not add a record to the table that contains the foreign key unless there is a corresponding record in the linked table.
Example
§ Consider the situation where we have two tables: Employees and Managers.
§ The Employees table has a foreign key attribute entitled ManagedBy which points to the record for that employee’s manager in the Managers table.
Referential integrity enforces the following three rules:
1.      We may not add a record to the Employees table unless the ManagedBy attribute points to a valid record in the Managers table.
2.      If the primary key for a record in the Managers table changes, all corresponding records in the Employees table must be modifiedusing a cascading update.
3.      If a record in the Managers table is deleted, all corresponding records in the Employees table must be deleted using a cascading delete.









<<Prev                                                                                                                                              Next>>






Comments

Popular posts from this blog

10. SQL Aliases

§ SQL aliases are used to temporarily rename a table or a column heading. § Basically aliases are created to make column names more readable. Syntax for Columns SELECT column_name AS alias_name FROM table_name Syntax for Tables SELECT column_name ( s ) FROM table_name AS alias_name ; Here is a SQL statement with alias § Example SELECT o . OrderID , o . OrderDate , c . CustomerName FROM Customers AS c , Orders AS o WHERE c . CustomerName = ’Around the Horn’ AND c . CustomerID = o . CustomerID ; The same SQL statement without aliases: § Example SELECT Orders . OrderID , Orders . OrderDate , Customers . CustomerName FROM Customers , Orders WHERE Customers . CustomerName = "Around the Horn" AND Customers . CustomerID = Orders . CustomerID ; <<Prev                                                                           Next>>

5. INDEX

§ Indexes are special lookup tables that the database search engine can use to speed up data retrieval. § An index can be created in a table to find data more quickly and efficiently. § An index helps speed up SELECT queries and WHERE clauses, but it slows down data input, with UPDATE and INSERT statements. § Indexes can be created or dropped with no effect on the data. § Updating a table with indexes takes more time than updating a table without (because the indexes also need an update). Clustered indexes § Uses physical memory. § Easy to retrieve data. § Data is in stored form. Non-clustered indexes § No use of physical memory is needed. § More complicated, data retrieval is not that easy. § We can too createuniqueindex . Duplicate values are not allowed . CREATEINDEX index_name ON table_name ( column_name ) CREATEINDEX index_name ON table_name ( column_name ) CREATEINDEX Pindex Difference between clustered index and no