Oracle数据库联合主键

本文详细介绍了Oracle数据库中联合主键的概念、作用及规范,并提供了创建、禁用、启用及删除联合主键的具体操作示例。

1、定义:

      主键:在Oracle中,主键指能唯一标识一条记录的单个数据表列或联合的数据表列(联合主键|复合主键)。主键用到的数据                   表列数据不能包含空值。而且,一张表只能包含一个主键。

2、作用:

    数据表的联合主键组合不允许重复,即同一行的数据,联合主键所属的列数据组合不能相同。

   用来通过多个字段值去确定本条数据的唯一性

3、规范:

    在Oracle数据库中,联合主键的列不能超过32个。主键可以在创建表时定义或者通过ALTER TABLE语法定义

4、使用:

   1)、创建表时添加联合主键:示例:

create table test
(sno char(12),
 name char(4),
CONSTRAINT PK_test PRIMARY KEY (sno,name) -- 联合主键
);

   2)创建表之后追加联合主键:

alter table 表名 add constraint pk_tab2 primary key (sno,name);

5、禁用主键

语法:

ALTER TABLE table_name DISABLE CONSTRAINT constraint_name;

示例:

alter table tb_employees disable constraint tb_employees_pk;

6、启用主键:

语法:

ALTER TABLE table_name ENABLE CONSTRAINT constraint_name;

示例:

alter table tb_employees enable constraint tb_employees_pk;

6、删除主键:

语法:

ALTER TABLE table_name DROP CONSTRAINT constraint_name;

示例:

alter table tb_employees drop constraint tb_employees_pk;
alter table tb_departments drop constraint tb_departments_pk;
alter table TB_PK_EXAMPLE drop constraint TB_PK_EXAMPLE_PK;
alter table TB_SUPPLIER_EX drop constraint TB_SUPPLIER_EX_PK;

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值