主键约束的创建有两种情况:有名型和无名型,
1 有名型:
create table students (
studentid int ,
studentname varchar(8),
age int,
constraint yy primary key(studentid)
);
或者
create table nbia_risk_info(
id number(10) not null,
riskcode varchar2(10) not null,
riskcname varchar2(20) not null,
riskename varchar2(20) ,
classCode varchar2(10) not null,
newRiskCode varchar2(10) not null,
riskflag varchar2(10) ,
flag varchar2(10),
vaildstatus varchar2(1) not null
);
alter table nbia_risk_info add constraint PK_nbia_risk_info primary key (id);
这样创建的主键都是有名字的,yy 和 PK_nbia_risk_info
2 无名型
ID number(10) primary key,
TASKTYPE varchar2(20) not null,
TASKNAME varchar2(100) not null,
CHANNELTYPE VARCHAR2(2) NOT NULL,
BANKCODE VARCHAR2(2) ,
BANKSITE VARCHAR2(20) ,
EXCUTETIME date not null,
SUCFLAG varchar2(1) not null,
FAILREASON varchar2(1000)
);
这样的主键创建的时候没有命名。
删除约束:(1 )有名型 alter table table_name drop constraint pk_name
eg:alter table nbia_risk_info drop constraint PK_nbia_risk_info;
(2 )无名型
两步操作 :
i 查询默认主键名称 select constraint _name from user_constraints where table_name='';
ii 删除主键 (1)另:是约束失效的SQL:alter table tbl_employee disable constraint constraint_name;