Oracle数据库添加删除主外键

时间:2022-04-29 07:41:58

(一)添加主键

1.表创建的同时,添加主键约束

语法:

create table "表名" 

"列名1数据类型及长度 constraint "主键名称"(一般主键名称为”PK_”开头) primary key, 
"列名2" 数据类型及长度 not null,——-not null 约束该列不为空,不写表示可以为空 
"列名3" 数据类型及长度

)

例: 
create table "Meeting
("name"  VARCHAR2(20) constraint "pk_name" primary key, 
"RoomNumVARCHAR2(20) not null, 
"username" VARCHAR2(50) 
)

————注意————- 
CREATE TABLE T_cardInfo –银行卡信息表 

cardID varchar2(19) primary key, 
—— 如果此处这样定义主键,则主键名称系统自己定义设置 
);

—–方法二:表创建后,添加主键约束 
语法: 
alter table "表名
add constraint "主键名称"(一般主键名称为”PK_”开头) primary key(要设为主键的列名); 
例: 
alter table "Meeting"
add constraint "pk_name" primary key ("name");

(二)删除主键

1.

alter table  "表名" drop constraint "主键名"

2.

alter table  "表名" drop primary key

(三)添加外键

1创建表格时添加

create table "表1-表名

"列名数据类型及长度,

constraint "外键名"(一般外键名称为”fK_”开头) foreign key ("要设为外键的列名") references "表2-表名"(与哪个表有关联) ("表2中该列列名")

)

例如

create table "Meeting"(

"username" varchar2(30),

constraint "fk_username" foreign key ("username") references "User"("username")

)

2创建外之后添加

alter table "表1-表名
add constraint "外键名称"(一般外键名称为”fK_”开头) foreign key ("要设为外键的列名"
references "表2-表名"(与哪个表有关联) ("表2中该列列名");

例如

alter table "Meeting
add constraint "fk_RoomNum" foreign key ("RoomNum"
references "MeetingRoom" ("RoomNum")

(四)删除外键

alter table "表名" drop constraint "外键名"