資料庫中的相關術語

忘塵天外天發表於2017-08-11

  在Oracle資料庫中每個資料庫裡面都包含很多物件,主要包括表、檢視、儲存過程、觸發器及其約束。

  1、表

  表,即在資料庫中存放資料用的資料表。每一個資料庫中都可以包含很多張資料表,但是每一個資料表的名字都是不能重複的。表的每一行代表一條記錄,每一列都有一個列名,列名時唯一的,行與列的交叉點稱為欄位。

  2、檢視

檢視是資料庫的虛擬表。在檢視中存放的是從資料庫表中查詢 的記錄,使用檢視主要是為了方便資訊查詢,同時也能縮短查詢資料的時間。

  3、儲存過程

  儲存過程是由SQL 語句和控制流語句組成的程式碼塊。儲存過程在資料庫內,可由應用程式通過儲存過程的名稱呼叫執行。

  儲存過程在開發軟體時,可以把大量的資料操作放在伺服器端的儲存過程中,而只返回需要的資料,這樣就減少了資料的傳輸量,速度也可以大大得提高。

  4、觸發器

  觸發器是特殊的儲存過程,也是由SQL語句和程式控制語句組成。但是,觸發器在資料庫中不需呼叫而是自動執行的。例如,在觸發器中可以定義在修改某張表記錄後執行觸發器中的內容。

  5、約束

  約束是在資料庫中保證資料庫裡表中資料完整性的手段。在Oracle中使用的約束有主鍵約束、外來鍵約束、唯一約束、檢查約束和非空約束5個,其中主鍵約束和唯一約束都被認為是唯一約束,而外來鍵約束被認為是參照約束。

  (1)主鍵(Primary  Key)約束

  主鍵約束在每個資料表中只能有一個,但是一個主鍵約束可以由多個列組成,通常把由多個列組成的主鍵又叫做複合主鍵或組合主鍵。主鍵約束可以保證主鍵列的資料沒有重複值且值不為空,也可以說是唯一的標識表中的一條記錄。

  (2)外來鍵(Foreign Key)約束

  外來鍵約束之所以被認為是參照約束,是因為它主要用作把一個表中的資料和另一個表中的資料進行關聯,表和表之間的關聯是為了保證資料庫中資料的完整性,使用外來鍵保證資料的完整性,也叫參照完整性。

  (3)唯一(Unique)約束

  唯一約束和主鍵約束一樣都是設定表中的列不能重複的約束,區別就是一個表中只能有一個主鍵約束,而卻可以有多個唯一約束。通常情況下設定唯一約束的目的就是使非主鍵列沒有重複值。唯一約束和主鍵約束的另一個區別是如果資料表中的某一列中有空值,那麼就不能把這個列設定為主鍵列,但可以設定為唯一約束。

  (4)檢查(check)約束

  檢查約束是用來指定表中列的值的取值範圍的。例如:在員工資訊表中的員工年齡的列,如果要使員工的年齡列的值為18~50,就可以使用檢查約束進行設定,當輸入的值不在有效範圍內時,就會出現錯誤。這樣就保證了資料庫中資料的有效性。

  (5)非空(not  null)約束

  非空約束是用來約束表中的列不允許為空的。例如,在員工資訊表中員工身份證號碼列,要求員工必須輸入時,可以使用非空約束來保證該列不能為空。

  資料庫設計的完整性

  使用資料庫約束就是保證資料庫完整性的方法。資料庫設計的完整性實際上就是為了保證資料的正確性。為了保證資料的正確性,在Oracle中涉及的完整性主要有3個,即實體完整性、區域完整性和參照完整性。

  1、實體完整性

  實體完整性要求表中的主鍵欄位都不能為空或者重複的值。例如,在學校裡每個學生的學號是唯一的,銀行卡的卡號也是唯一的,每個人的身份證號也是唯一的等。

  2、區域完整性

  區域完整性是保證輸入到資料庫中

相關文章