Oracle如何給資料庫新增約束過程解析

2022-09-25 05:57:09 字數 1848 閱讀 4461

主鍵約束(兩個特性)

1:主鍵必須寫

2:主鍵不可重複

create table stu01(

sid varchar(100),

sname varchar2(100)

--constraint pk_stu01_sid primary key (sid)

) --新增約束(主鍵)

alter table stu01 add constraint pk_stu01_sid primary key(sid) ---新增主鍵約束

alter table stu01 drop constraint pk_stu01_sid ---刪除主鍵約束

唯一約束(unique)

唯一,但是可以為空

create table stu02(

sid varchar2(100),

sname varchwww.cppcns.comar2(100),

constraint pk_stu02_sid primary key(sid),

constraint uk_stu02_sname unique(sname)

)非空約束(not null)

一般簡寫

create table stu03(

sid varchar2(100),

sname varchar2(100) not null,

constraint pk_stu03_sid primary key(sid),

constraint uk_stu03_sname unique(sname)

)外來鍵約束

先新增學生表、和課程表

create table stu04(

sid varchar2(100),

sname varchar2(100) not null,

constraint pk_stu04_sid primary key(sid),

constraint uk_stu04_sname unique(sname)

) --建立課程表

create table course01(

cid varchar2(100),

cname varchar2(100) not null,

constraint pk_course01_cid primary key(cid),

constraint uk_course01_cname unique(cnamejshoocjvwp)

) --最後新增成績表,外來鍵約束課程表和學生表

create table mark02(

sid varchar2(程式設計客棧100),

cid varchar2(100),

mark number,

constraint pk_mark02_sidandcid primary key(sid,cid),

constraint fk_mark02_sid foreign key(sid) references stu04(sid),

constraint fk_mark02_cid foreign key(cid) references course01(cid),

constraint uk_mark02_mark unique(mark)

) www.cppcns.com--刪除外來鍵約束

alter table mark01 drop constraint fk_mark02_sid

alter table mark01 drop constraint fk_mark02_cid

本文標題: oracle如何給資料庫新增約束過程解析

本文位址: /shujuku/oracle/350979.html

linux 新增oracle資料庫

1 切換到oracle使用者 su oracle2 登入sys使用者 sqlplus as sysdba3 建立表空間 查詢表空間路徑 select name from v datafile 查詢結果如下 建立表空間 create tablespace aecip cif datafile home...

資料庫如何新增約束

主鍵約束 外來鍵約束 unique約束 唯一約束 check約束 default約束 create table demotable 建立表 id int identity 1,1 primary key not null,設定主鍵約束 demono varchar 50 unique not nul...

oracle資料庫如何建立使用者和角色,並給其賦權?

一 建立使用者並賦予許可權 1 建立使用者 create user wangxiangyu identified by wangxiangyu 2 賦權 grant dba to wangxiangyu grant create session to wangxiangyu 會話許可權 沒有該許可權...