美文网首页
数据库核心概念简介

数据库核心概念简介

作者: nextliving | 来源:发表于2018-04-22 13:25 被阅读14次

    学习数据库的过程中设计大量的概念,其中又会有很多概念表达同样的东西。本文收录数据库一些核心概念,方便数据库的学习。

    records=rows=tuples

    它们表达了同一个东西,就是一个表(table)的一行

    Fields=Columns=Attributes

    它们表达了同一个东西,就是一个表(table)的一列

    ERD

    ERD,Entity Relationship Diagram,用于表示很多张表(table)及它们之间的关系

    primary key

    主键,用于区别同一张表中的不同记录(record,row或者tuple),也被用于定义不同的表之间的关系。primary key不能为NULL值(为NULL还怎么确保记录的唯一性?)

    unique key

    对不同的记录(record,row或者tuple) unique key也是唯一的。unique key不是主键,和主键可以定义不同表之间的关系不同,unique key用于表内查询记录时提高性能。

    foreign key

    把一张表中的primary key拷贝到另一张表中,那么另一张表中的拷贝值就是foreign key。比如有2种表author和publication,author中primary key是author_id,现将author_id拷贝进入表publication中,成为publication的一个field,那么publication中的author_id对于表publication来说就是一个foreign key,用于指向表author,确立这2张表的关系。注意,foreign key可以为NULL值

    parent table

    一张表A的primary key出现在另一张表P中作为foreign key,那么可以说表A是表P的parent table

    child table

    一张表A的primary key出现在另一张表P中作为foreign key,那么可以说表P是表A的child table

    cascade

    当修改了parent table中的primary key时,这种改变必须被映射(cascade)到相关的全部child table的foreign key.当修改child table中的foreign key为NULL时,不必检查primary key是否存在;如果修改child table中的foreign key为非NULL的值,必须先检查相关parent table中的primary key是否存在。如果删除parent table中的一条记录(record),和父表primary key对应的子表中的foreign key对应的记录也必须删除。

    参考

    • Beginning Database Design, by Gavin Powell

    相关文章

      网友评论

          本文标题:数据库核心概念简介

          本文链接:https://www.haomeiwen.com/subject/rjtclftx.html