发布网友
共1个回答
热心网友
候选码
若关系中的某一属性组的值能唯一的标识一个元组,而其任何真子集都不能再标识,则称该属性组为候选码。
例如:在学生实体中,“学号”是能唯一的区分学生实体的,同时又假设“姓名”、“班级”的属性组合足以区分学生实体,那么{学号}和{姓名,班级}都是候选码。
简单的说,候选码就是没有被选为主码的主属性,当一个关系有多个属性可以唯一标示时,就选取一个属性或者属性组为主码,剩下的属性或属性组就称为候选码.
例如:关系 工人(工号,身份证号,姓名,性别,部门).显然工号和身份证号都能够唯一标示这个关系,所以都是主属性,我们选取工号为主码,那么身份证号就是候选码,反正,我们选择身份证号为主码,也可以让工号为候选码.
如果上面候选码的描述,就是楼主的要求的话。
那么很简单, 就是通过 unique 定义。
例子如下:
SQL> CREATE TABLE test_1 (
2 id INT PRIMARY KEY,
3 name VARCHAR2(20) UNIQUE,
4 val VARCHAR(10)
5 );
Table created.