關系資料庫關鍵字-九游会j9娱乐平台
1. 資料庫中什麼是主鍵,什麼是外鍵
關鍵字(key)
關鍵字是關系模型中的一個重要概念,它是邏輯結構,不是資料庫的物理部分。
候選關鍵字(candidate key)
如果一個屬性集能惟一地標識表的一行而又不含多餘的屬性,那麼這個屬性集稱為候選關鍵字。
主關鍵字(primary key)
主關鍵字是被挑選出來,作表的行的惟一標識的侯選關鍵字。一個表只有一個主關鍵字。主關鍵字又可以稱為主鍵。
公共關鍵字(common key)
在關系資料庫中,關系之間的聯系是通過相容或相同的屬性或屬性組來表示的。如果兩個關系中具有相容或相同的屬性或屬性組,那麼廳慎這個屬性或屬性組被稱為這兩個關系的公共關鍵字。
如有一個表,欄位為:
id firstname lastname address phone idcard
那麼id或idcard或firstnamelastname都可以說是關鍵字。
其中id為主關鍵字,idcard和firstnamelastname為候選關鍵字
外關鍵字(foreign key)
如果公共關鍵字在一個關系中是主關鍵字,那麼這個公共關鍵字被稱為另一指伏洞個關系的外關鍵字。由此可見,外關鍵字表示了兩個關系之間的聯系。以另一個關系的外關鍵字作主關鍵字的表被稱為主表,具有此外關鍵字的表被稱為主表的從表。外關鍵字又稱作外鍵。
表a:id firstname lastname address classid
表b:classid classname
classid是表b的主鍵,在表a中有一個欄位和表唯枯b中的classid關聯,所以,classid 是表b的外鍵
2. 資料庫中什麼是主關鍵字主關鍵字與外關鍵字的區別與聯系
主關鍵字是用於唯一地標識表中的某一條記錄。
聯系:外鍵是相對於資料庫設計中的參考完整性而言,與主鍵之間是彼此依賴的關系。
區別:
一、作用不同
1、主關鍵字:用來在一個表中引用來自於另一個表中的特定記錄。是一種唯一關鍵字,表定義的一部分。
2、外關鍵字:公共關鍵字在一個關系中是主關鍵字,那麼這個公共關鍵字被稱為另一個關系的外關鍵字。
二、組成不同
1、主關鍵字:主鍵可以由多個關鍵字共同組成,並且主關鍵字的列不能包含空值。主關鍵字是可選的,並且可在 create table 或 alter table 語句中定義。
2、外關鍵字:可以為空值(除了sqlserver等一些資料庫),但如果有值的話一定是參照的那個主表中的主鍵值。從表需要用到主表的屬性,沒有主表就沒有從表。
三、特點不同
1、主關鍵字:可以由一個欄位,也可以由多個欄位組成,分別稱為單欄位主鍵或多欄位主鍵。可以唯一確定表中的一行數據,或者可以唯一確定一個實體。
2、外關鍵字:.當一張二維表(如表a )的主關鍵字被包含在另一張二維表(如表b)中時,a表中的主關鍵字便成為b 表的外關鍵字。
3. 在關系資料庫中,主關鍵詞和外部關鍵詞有什麼關系
主關鍵詞(即主關鍵字)和外部關鍵詞(即外部關鍵字)連著均是關鍵詞的范疇,外部關鍵詞可以是主關鍵詞。外部關鍵詞為關系中某個屬性或屬性組合並非關鍵字,但卻是另一個關系的主關鍵詞。
主關鍵詞用來在一個表中引用來自於另一個表中的特定記錄。主關鍵字是一種唯一關鍵字,表定義的一部分。一個表的主鍵可以由多個關鍵詞共同組成,並且主關鍵字的列不能包含空值。主關鍵字是可選的。
(3)關系資料庫關鍵字擴展閱讀:
主關鍵詞的元則:
1、主鍵應當是對用戶沒有意義的。如果用戶看到了一個表示多對多關系的連接表中的數據,並抱怨它沒有什麼用處,那就證明它的主鍵設計得很好。
2、不要更新主鍵。實際上,因為主鍵除了唯一地標識一行之外,再沒有其他的用途了,所以也就沒有理由去對它更新。如果主鍵需要更新,則說明主鍵應對用戶無意義的原則被違反了。這項原則對於那些經常需要在數據轉換或多資料庫合並時進行數據整理的數據並不適用。
3、主鍵不應包含動態變化的數據,如時間戳、創建時間列、修改時間列等。
4、主鍵應當由計算機自動生成。如果由人來對主鍵的創建進行干預,就會使它帶有除了唯一標識一行以外的意義。一旦越過這個界限,就可能產生人為修改主鍵的動機,這樣,這種系統用來連接記錄行、管理記錄行的關鍵手段就會落入不了解資料庫設計的人的手中。
4. 什麼是關系型資料庫,主鍵,外鍵,索引分別是什麼
1、關系型資料庫,是指採用了關系模型來組織數據的資料庫,其以行和列的形式存儲數據,關系型資料庫這一系列的行和列被稱為表,一組表組成了資料庫。
2、主關鍵字(primary key)是表中的一個或多個欄位,它的值用於唯一的標識表中的某一條記錄
3、外鍵表示了兩個關系之間的相關聯系。以另一個關系的外鍵作主關鍵字的表被稱為主表,具有此外鍵的表被稱為主表的從表。外鍵又稱作外關鍵字
4、在關系資料庫中,索引是一種單獨的、物理的對資料庫表中一列或多列的值進行排序的一種存儲結構,它是某個表中一列或若干列值的集合和相應的指向表中物理標識這些值的數據頁的邏輯指針清單