官术网_书友最值得收藏!

Entity integrity constraint

In the relational model, a relation is defined as a set of tuples. This means that all the tuples in a relation must be distinct. The entity integrity constraint is enforced by having a primary key which is an attribute/set of attributes having the following characteristics:

  • The attribute should be unique
  • The attributes should be not null

Each relation must have only one primary key, but can have many unique keys. A candidate key is a minimal set of attributes that can identify a tuple. All unique, not null attributes can be candidate keys. The set of all attributes form a super key. In practice, we often pick up a single attribute to be a primary key instead of a compound key ( a key that consists of two or more attributes that uniquely identify a tuple) to ease the joining of the relations with each other.

If the primary key is generated by the DBMS, then it is called a surrogate key or synthetic key . Otherwise, it is called a natural key. The surrogate key candidates can be sequences and universal unique identifiers (UUID). A surrogate key has many advantages such as performance, requirement change tolerance, agility, and compatibility with object relational mappers. The chief disadvantage of surrogate keys is that , it makes redundant tuples possible. 

主站蜘蛛池模板: 三亚市| 鞍山市| 揭西县| 平顶山市| 土默特右旗| 甘谷县| 芒康县| 乌苏市| 互助| 沧源| 丰原市| 迁西县| 新河县| 峨边| 民和| 青铜峡市| 花莲市| 永顺县| 卫辉市| 抚顺县| 南华县| 哈巴河县| 阳山县| 临沂市| 天津市| 钟山县| 泰州市| 尚义县| 梁山县| 武威市| 锡林浩特市| 哈巴河县| 长宁县| 和顺县| 西平县| 陆河县| 青神县| 深州市| 台安县| 抚远县| 十堰市|