Penguin
Blame: RelationalDataBase
EditPageHistoryDiffInfoLikePages
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.