在oracle11g系統中約束的型別有哪些

2021-03-20 13:50:09 字數 1902 閱讀 9011

1樓:萬勝學院

你可以導成pdm檔案然後再匯入到本機的.

在oracle資料庫中,完整性約束型別有哪幾種

在 oracle11g系統中 約束的型別有哪些 200

oracle的資料完整性有哪些型別

2樓:

關係模型的三類完整性是實體完整性、參照完整性和使用者完整性。

實體完整性和參照完整性是關係模型必須滿足的完整性約束條件,應由關係系統自動支援。

1、實體完整性 (entity integity)

實體完整性是基於主碼的,乙個主碼由乙個或多個屬性組成。實體完整性要求主碼中的任一屬性(列)不能為空,所謂空值 是「不知道」或「無意義」的值。之所以要保證實體完整性主要是因為:

在關係中,每乙個元組的區分是依據主碼值的不同,若主碼值取空值,則不能標明該元組的 存在。

2、參照完整性 (efeential integity)

參照完整性是基於外碼的,若基本關係r中含有與另一基本關係s的主碼pk相對應的屬性組fk(fk稱為r的外碼),則參照完整性要求,對r中的每個元組在fk上的值必須是s中某個元組的pk值,或者為空值。

參照完整性的合理性在於:r中的外碼只能對s中主碼的引用,不能是s中主碼沒有的值.如學生和選課錶兩關係,選課表中的學號是外碼,它是學生表的主鍵,若選課表中出現了某個學生表中沒有的學號,即某個學生還沒有註冊,卻已有了選課記錄,這顯然是不合理的。

3、使用者定義的完整性(use-defined integity)

實體完整性和參照完整性適用於任何關係資料庫系統。除此之外,不同的關係資料庫系統根據其應用環境的不同,往往還需 要一些特殊的約束條件。使用者定義的完整性就是針對某一具體關聯式資料庫的約束條件,它反映某一具體應用所涉及的資料必須滿足的語義要求。

如:學生的成績一般 情況下的取值範圍在0-100之間。

二、oacle的資料完整性的實現

1、oacle中的實體完整性

實體完整性規則要求主屬性非空。oacle在create table語句中提供了primary key子句,供使用者在建表時指定關係的主碼列。例如:

在學生選課資料庫中,要定義student表的sno屬性為主碼,可使用如下語句:

sqlcreate table student

( sno number

(8),

sname varchar(20),

sage number(20),constraint pk_sno primary key (sno));

其中:primary key(sno)表示sno是student表的主碼。pk_sno是此主碼約束名。

在用primary key語句定義了關係的主碼後,每當使用者程式對主碼列進行更新操作時,系統自動進行完整性檢查,凡操作使主碼值為空值或使主碼值在表中不唯一,系統拒絕此操作,從而保證了實體完整性。

2、oracle中的參照完整性

oacle的create table語句不僅可以定義關係的實體完整性規則,也可以定義參照完整性規則,即使用者可以在建表時用foreign key 子句定義哪些列為外碼列,用references子句指明這些外碼相應於哪個表的主碼,用on delete cascade 子句指明在刪除被參照關係的元組時,同時刪除參照關係中外碼值等於被刪除的被參照關係的元組中主碼值中的元組。

sqlcreate table sc

(sno number

(8);

**o number

(2),

gade number

(3),

constraint pk_sc primary key(sno,**o),constraint fk_sno foreign key (sno) references student(sno) on delete cascade);

oracle 11g如何匯入 dmp檔案

嘉文四世丶威威 1 搜尋cmd,開啟命令指示符介面。2 然後以管理員身份登入,進入到操作頁面中。3 然後在彈出來的頁面中建立表空間。4 在彈出來的頁面中建立使用者,設定密碼 5 然後在彈出來的頁面中授權dba。6 在彈出來的頁面中輸入exit,退出sql。7 匯入命令 imp 使用者名稱 密碼 例項...

linux 下如何修改oracle11g所有使用者密碼使其永不過期?相關的

oracle的使用者跟作業系統無關,是oracle自己管理的,linux下跟windows下一樣通過客戶端工具設定密碼是否過期。linux下怎麼設定某個使用者的密碼永不過期?設定某個使用者的密碼過期時間可以用usermod e來設定,如果要統一設定使用者的密碼過期時間,那麼就要修改 etc logi...

centos 6 0下安裝oracle 11g遇到的問題

問題1 shell 語法中中括號兩邊都必須有空格 寫成這樣就不會出錯了 if 條件 then 這裡這幾句沒什麼用,完全可以不要。問題2 未發現命令dbca可能是因為沒有設定路徑的原因,把oracle安裝目錄下bin那個目錄加入到path中就可以解決。在這兩個問題之前,應該要確認oracle11g是否...