Content deleted Content added
Reverted 1 edit by 41.138.219.20 (talk): "DBMS" is not a plural. (TW) |
IkamusumeFan (talk | contribs) →1970s relational DBMS: Use SVG version instead of PNG image to illustrate the relational key concept. |
||
Line 69:
In this paper, he described a new system for storing and working with large databases. Instead of records being stored in some sort of [[linked list]] of free-form records as in Codasyl, Codd's idea was to use a "[[Table (database)|table]]" of fixed-length records, with each table used for a different type of entity. A linked-list system would be very inefficient when storing "sparse" databases where some of the data for any one record could be left empty. The relational model solved this by splitting the data into a series of normalized tables (or ''relations''), with optional elements being moved out of the main table to where they would take up room only if needed. Data may be freely inserted, deleted and edited in these tables, with the DBMS doing whatever maintenance needed to present a table view to the application/user.
[[Image:Relational key SVG.
The relational model also allowed the content of the database to evolve without constant rewriting of links and pointers. The relational part comes from entities referencing other entities in what is known as one-to-many relationship, like a traditional hierarchical model, and many-to-many relationship, like a navigational (network) model. Thus, a relational model can express both hierarchical and navigational models, as well as its native tabular model, allowing for pure or combined modeling in terms of these three models, as the application requires.
|