oracle知識整理

2021-06-19 13:41:20 字數 2027 閱讀 8156

外來鍵(foreign key)約束:

在建表之後,為表增加外來鍵約束可以像下面這樣操作:

為表增加外來鍵約束:

1、alert  table student 

2、add constraint stu_fk foreign key (classid)

3、references class(classid)

為student表增加外來鍵(我們稱student為字表)。

其中,第二行**表示為student表的classid欄位增加外來鍵約束,外來鍵約束的別名叫stu_fk。

第三行**表示該外來鍵約束指向class表中的classid列。

注意:外來鍵列(第乙個classid)和被引用列(第二個classid)的列名可以不同,但是資料型別要相同;另外,在建立外來鍵約束之前,父表必須已經存在,並且父表的引用列也就是父表的主鍵列必須被定義為unique或者primary key約束。

在建表時,為表增加外來鍵約束可以像下面這樣操作:

create table student(

stu_id number(8) not null primary key; //表的主鍵

stu_code varchar2(10) ,

classid number(4)references class(classid)// /表的外來鍵

刪除外來鍵約束:

alert  table studentdrop constraintstu_fk f(外來鍵約束)

check約束:

在建表時建立約束:

為列指定check約束,如下:

create table student(

stu_id number(8) not null primary key; //表的主鍵

stu_code varchar2(10)  unique,

stuage number(3) constraint age_ck check(stuage > 0)

classid number(4) references class(classid) // /表的外來鍵

在建表後建立約束:

alert  tablestudentadd  constraintstuage_ckcheck(stuage > 0);

刪除約束:

alert  table

studentdrop constraintstuage_ck;

unique約束:

如果為列定義unique約束,那麼該列中不能包含重複的值,可以在同乙個列上建立unique和not null

在建表時建立unique:

create table student (

stuid number(10) not null  primary key,

stucode number(20)constraint stu_uk unique,

stuage number(3)  constraint  stuag_ck check(stuage > 0)

如果為乙個列建立unique約束,而沒有not null 約束,則該列的資料可以包含多個null值,多個null值不算重複值。

在建表後建立unique:

alert  tablestudentadd unique(stuname);

刪除unique約束:

alert  tablestudentdrop  unique(stuname)或

alert  tablestudentdrop  constraintstu_uk(約束名)

oracle 知識整理

刪除使用者 例如建立了乙個使用者 a,要刪除它可以這樣做 connect sys 密碼 as sysdba drop user a cascade 就這樣使用者就被刪除了 使用者修改密碼,解鎖 alter user scott identified by alter user scott accou...

oracle知識整理

1.檢視當前資料庫的名字 select name from v database 2.檢視當前資料庫例項名 select instance name from v instance 這句不知道有什麼作用,提示sql無效 show parameters instance name 乙個資料庫可以有多個...

Oracle知識點整理(四)

oracle知識點整理 四 前言日期關鍵字 sysdate systimestamp 日期函式 to date to char last day add months months between next day least greatest 日期得計算 日期rr注意點 空值null 預設值插入n...