主键与外键

基本定义

主键(primary key):一列或一组列,其值能够唯一区分表中每个行

 特性:1.任何两行都不具有相同的主键值

             2.每行必有一个主键值,且不为NULL

注意:主键列的值最好不需要更新,且不会更改

外键(foreign key):指的是某个表中的某一列包含另一个表的主键,即表的外键为另一个表的主键,外键将两个表联系起来。


举个例子

表customers主要存放客户的信息,其中每个客户的ID都不同,因此客户ID可以作为customers表的主键。表orders存放客户的订单信息,包括订单号以及下单时间和客户的ID,我们知道,每个订单的订单号都不相同,因此订单号则可以作为orders表的主键,而orders表中的客户ID就是其外键,联系了customers表和orders表。


如何在表中定义主键和外键

创建表时定义

create table table_name

(

...

primary key(主键列名)  //可以将多个列作为主键,这些列的组合必须不同

foreign key(外键列名) references another_table_name(相应的主键列名)

)

创建表后进行定义外键

alter table table_name 

add constraint 外键名

foreign key(外键列名) references another_table_name(相应的主键列名)

你可能感兴趣的:(主键与外键)