80后生活用品:很菜的数据库问题,主键的值允许重复吗?外键什么作用?

来源:百度文库 编辑:高校问答 时间:2024/04/28 05:00:27
一个表里可以设两个主键吗?

主键是用来唯一表示一条数据的值,不能重复的(如学生的学号、注册时使用的用户名都是唯一的值,不能重复)

一个表里可以设两个(或者多个)主键,此时由这两个字段唯一表示一条数据(比如用入学时间、姓名、出生时间、性别、班级来表示一个学生,姓名可能会重复,但是将这些字段组合起来就不能重复了)

外键主要是当两个表有参照关系的时候用
比如有两个表如下
1、学生编号表
学号 姓名
001 张三
002 李四
003 王五
004 赵六

2、学生情况表
学号 性别 年龄
001 男 18
002 男 20
003 女 19
004 女 18

这两个表有一个共同的字段学号,表2的号是参照表1得来的,这就是外键

主键不可以重复,只能有一个字段为主键,外键和别的表关联用