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

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. 

主站蜘蛛池模板: 沂水县| 平遥县| 贵州省| 榆树市| 旬阳县| 黔江区| 临桂县| 内江市| 建阳市| 望都县| 宝鸡市| 烟台市| 墨玉县| 邵武市| 左云县| 美姑县| 苍山县| 皋兰县| 长兴县| 潜山县| 札达县| 遂川县| 洛隆县| 苍南县| 陕西省| 阜宁县| 红河县| 屯留县| 通许县| 驻马店市| 万荣县| 衡东县| 雷波县| 宁夏| 汉阴县| 阿克陶县| 长汀县| 淳安县| 确山县| 邛崃市| 舒城县|