Annotated edit history of
RelationalDataBase version 3, including all changes.
View license author blame.
Rev |
Author |
# |
Line |
1 |
StuartYeates |
1 |
A DataBase built around SetTheory and [SQL]. |
|
|
2 |
|
|
|
3 |
A relation ([AKA] a table) is a set of rows. A row is a sequence of fixed length fields ([AKA] columns or attributes). A column is uniquely identified within the relation by a name. A row is uniquely identified within the relation by the values of it's primary key. The default primary key, which is a non-strict subset of the columns of the table. |
|
|
4 |
|
|
|
5 |
A secondary key is a non-strict subset of the columns of any table that correspond to the primary key of another table. |
|
|
6 |
|
2 |
CraigBox |
7 |
A relation differs from a SpreadSheet in that the rows and columns are unordered. |
1 |
StuartYeates |
8 |
|
3 |
StuartYeates |
9 |
[SQL] set-oriented is a language designed to build, maintain and query such [DataBase]s. Because of the very clean mapping of tables and rows into set theory a large number of properties about relational databases have been proved in a mathematical sense and automatic query optimisation is now a standard option on many high-end relational databases. There are also formal proofs of correctness for a number of results in for locking relational databases at various levels of granularity, permitting parallel access. |
1 |
StuartYeates |
10 |
|
|
|
11 |
RelationalDataBase quality revolves around five normal forms: |
|
|
12 |
#__first normal form__ requires that no relation have multiple-valued fields. |
|
|
13 |
#__second normal form__ requires __first normal form__ and that no non-primary key fields are independant of any primary key fields. |
|
|
14 |
#__third normal form__ ([AKA] Boyce-Codd normal form) requires __second normal form__ and that no non-primary key fields are dependant of any non-primary key fields. |
|
|
15 |
#__fourth normal form__ requires __third normal form__ and that relations have at most only one independent multivalued dependency. |
|
|
16 |
#__fifth normal form__ requires __fourth normal form__ and that relations cannot be decomposed into smaller realtions without loss of information. |
|
|
17 |
|
|
|
18 |
These aren't very good explainations, but I didn't want to cut and paste. There are very large number of books and websites on relational database design. |
|
|
19 |
|
3 |
StuartYeates |
20 |
There are very few real-world [RelationalDataBase]s, most of the databases marketed as [RelationalDataBase]s are actually [PostRelationalDataBase]s. |