1、定义
若当前有一张Admin表,如下:
(1)唯一索引
若要为admin_id创建唯一索引,则语句为:
Create [Unique] Index 索引名 on 表名 (列名)
create [Unique] Index IDX_admin_id on Admin(admin_id)
也可以用图形化界面,如MySQL中,设计表->索引,然后进行添加
(2)创建主键
Alter table 表名
add constraint 主键名 primary key(列名)
Alter table administer
ADD CONSTRAINT admin_id_PK PRIMARY key(admin_id)
(3)创建约束,这个与创建主键类似
Alter table 表名
add constraint 约束名 unique(列名)
Alter table administer
ADD CONSTRAINT admin_id_UQ unique(admin_id)
什么时候创建唯一索引、主键、Unique约束?
1、主键:首先要知道候选键——一个属性或一个属性集能够唯一标识一个关系的元组而又不包含多余的属性。主键是从候选键中选择一个作为主键。比如:学校教务系统有一个学生信息表,有学号、身份证号、姓名这三个字段,学号和身份证号都能唯一标识一个学生,通常选择学号作为主键。
2、Unique约束:通常是为非主属性设置的,非主属性取值要不重复,这个时候就可以将该属性设置为Unique约束。就如上面的例子中,身份证号不是主键,但它的取值却不能重复,这种情况就必须使用Unique约束。
3、唯一索引:创建索引是为了加快检索速度,只有当经常查询索引列中的数据时,才需要在列中建立索引。索引是在磁盘上开辟一块空间,然后把列中的数据导入进去。创建唯一索引,确保数据库表中每一行数据的唯一性。