Oracle如何給數(shù)據(jù)庫(kù)添加約束過(guò)程解析
主鍵約束(兩個(gè)特性)
1:主鍵必須寫
2:主鍵不可重復(fù)
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 varchar2(100), constraint PK_stu02_sid primary key(sid), constraint UK_stu02_sname unique(sname) )
非空約束(not null)
一般簡(jiǎn)寫
create table stu03( sid varchar2(100), sname varchar2(100) not null, constraint PK_stu03_sid primary key(sid), constraint UK_stu03_sname unique(sname) )
外鍵約束
先添加學(xué)生表、和課程表
create table stu04( sid varchar2(100), sname varchar2(100) not null, constraint PK_stu04_sid primary key(sid), constraint UK_stu04_sname unique(sname) ) --創(chuàng)建課程表 create table course01( cid varchar2(100), cname varchar2(100) not null, constraint PK_course01_cid primary key(cid), constraint UK_course01_cname unique(cname) ) --最后添加成績(jī)表,外鍵約束課程表和學(xué)生表 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) ) --刪除外鍵約束 alter table mark01 drop constraint FK_mark02_sid alter table mark01 drop constraint FK_mark02_cid
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Hibernate Oracle sequence的使用技巧
本文介紹了關(guān)于Hibernate中如何使用Oracle sequence的問(wèn)題以及應(yīng)注意的事項(xiàng)。2009-06-06Oracle 23ai中重要新特性VECTOR數(shù)據(jù)類型的使用
Oracle 23ai 中的 VECTOR 數(shù)據(jù)類型是 Oracle 數(shù)據(jù)庫(kù)在 AI 領(lǐng)域的一個(gè)重要新特性,它允許用戶以向量的形式存儲(chǔ)數(shù)據(jù),并在這些向量的基礎(chǔ)上進(jìn)行高效的搜索和分析,下面就來(lái)介紹一下如何使用2024-08-08Oracle表空間的創(chuàng)建、使用、重命名與刪除方法
表空間是Oracle數(shù)據(jù)庫(kù)中的一個(gè)重要概念,它是一組物理文件,用于存儲(chǔ)數(shù)據(jù)庫(kù)對(duì)象,如表、索引等,在使用Oracle數(shù)據(jù)庫(kù)時(shí),通常需要?jiǎng)?chuàng)建表空間來(lái)存放數(shù)據(jù),本文介紹了Oracle表空間的創(chuàng)建、使用、重命名與刪除方法2024-03-03Oracle存儲(chǔ)過(guò)程基本語(yǔ)法介紹
Oracle存儲(chǔ)過(guò)程基本語(yǔ)法介紹,有需求的朋友可以參考下2012-11-11Oracle 閃回技術(shù)詳細(xì)介紹及總結(jié)
這篇文章主要介紹了Oracle 閃回技術(shù)詳細(xì)介紹的相關(guān)資料,這里提供了4種閃回技術(shù),需要的朋友可以參考下2016-11-11Oracle將字符編碼從GBK轉(zhuǎn)到UTF8,如何操作比較穩(wěn)妥?
有個(gè)學(xué)校oracle數(shù)據(jù)庫(kù)的編碼是GBK,而且?guī)炖镞呉呀?jīng)有很多生產(chǎn)數(shù)據(jù)了,現(xiàn)在想改成UTF8的,如果執(zhí)行了這步操作,會(huì)出現(xiàn)哪些問(wèn)題2014-02-02基于Oracle的高性能動(dòng)態(tài)SQL程序開(kāi)發(fā)
對(duì)動(dòng)態(tài)SQL的程序開(kāi)發(fā)進(jìn)行了總結(jié),并結(jié)合筆者實(shí)際開(kāi)發(fā)經(jīng)驗(yàn)給出若干開(kāi)發(fā)技巧2007-03-03Oracle In和exists not in和not exists的比較分析
一個(gè)是問(wèn)in exist的區(qū)別,一個(gè)是not in和not exists的區(qū)別2009-08-08