資料庫 表中主鍵約束和外來鍵約束有什麼用?兩者之間建立關聯後有

2021-05-23 01:27:48 字數 3229 閱讀 1609

1樓:小哥無爭

比如說兩張表a,b

a裡面bai的id是dub中id主鍵

b是a的外來鍵

那麼建立表zhi間關係後就可以dao使用

專a的條件查詢b中的資料列屬如:

select * from b

left join a on a.id = b.id where a.name = "啥啥啥"

還有右連結,內連線

2樓:匿名使用者

雙重約束~~~~~~

資料庫的五種約束關係是什麼?主外來鍵有什麼用。求教

3樓:

資料庫的約束是為了體現資料庫

完整性的。

實體完整性有primary key (主鍵)參照完整性有foreign key (外來鍵)使用者自定義完整性有:列表非空(not null),列表唯一(unique),

檢查列值是否滿足一個布林表示式(check)通常就上面這5個了

後面更深還會有其他的,但是估計你現在還不用現在我給你解釋,主外來鍵

主鍵就是在一個表中,能夠唯一代表各元組值得就像我們的身份證號,全世界只有一個,是獨一無二的屬性外來鍵就是在一個表中,參照其他表中的主鍵的本表屬性就像在sc表中有sno不是主鍵,但它參照了s表中的主鍵sno,所以sno在sc表中就是外來鍵啦

希望我的回答能讓你理解這中知識。

不懂可以再問

4樓:匿名使用者

約束:為了保證表中資料的正確性和有效性的一種限制。

約束:主鍵約束:保證記錄的不重複,並且不能為空非空約束、檢查約束:限制莫一列的取值、預設值約束、唯一性約束:記錄唯一,可以有一行資料為空

外來鍵約束:這個是實現表與表之間的約束,從表的欄位值必須在主表中存在,比如

學生表和課程表都有一個公共欄位,學號,學號欄位在學生表中充當主鍵,在課程表中是外來鍵,那就保證了,所有參加考試學生必須都在學生表中。

sql2008中主鍵約束和主表是什麼?外來鍵約束是什麼?主表和從表又是什麼?怎麼建立?

5樓:匿名使用者

樓主好,想知道主鍵約束,就需要知道主鍵是什麼。所謂主鍵,你可以理解為一個能夠標識資料唯一的標誌,比如我們設定id,id是永遠都不能重複的,這就是主鍵。新增了主鍵之後,就有了主鍵約束。

比如你的主鍵是登陸名稱,這一列是什麼資料型別,是否為自增,等等其他的對這一列的資料規定,全部就成了主鍵約束。

主表的概念,我們可以理解為在關係中,處於最基礎的表,即可理解為主表。比如我設定銷售層級關係表,有一個表儲存的區域資訊,另外一個表儲存經銷商資訊,再有一個表儲存售點資訊。經銷商是有隸屬的區域的,售點有隸屬的經銷商,那麼在這個關係裡,區域資訊就成為了主表。

外來鍵約束,就是設定了外間關係後,必須依賴上層資料才能操作,就叫做外來鍵約束。比如還是上面銷售層級關係的例子,一個經銷商肯定有所在的區域,如果你在經銷商表中設定了區域列為外來鍵,那麼你經銷商表中所儲存的區域,必須是區域表中存在的區域,否則不能對經銷商的區域資料做出插入或者修改,或者刪除。

上述的關係事實上就是主從關係,建立的三張表區域表就成了主表,經銷商和售點兩張表就成了從表,也叫子表。

對於如何建立,一定是先要建立主表,再建立從表,建立的關係要依次向下。通常設計這些東西都有很多專案開發工具,比如pointdesigner,vs中的表結構設計專案,等等等等。

想問一下資料庫設定外來鍵約束的主要目的

6樓:匿名使用者

外來鍵必須為另一個表中的主鍵

外來鍵的用途是確保資料的完整性。它通常包括以下幾種:

實體完整性,確保每個實體是唯一的(通過主鍵來實施)

域完整性,確保屬性值只從一套特定可選的集合裡選擇

關聯完整性,確保每個外來鍵或是null(如果允許的話)或含有與相關主鍵值相配的值

例子:表a 字典表, 表b 業務表。

外來鍵應建立在表b 上 。

1、表b 的字典專案的**只能是表a 中**內容。

2、表b 可以無條件刪除記錄。

3、表a 在刪除的時候,將根據外來鍵的規則,判斷表b 中是否使用了要刪除資料的**,如果有引用,則不能刪除。

oracle 如何建立表外來鍵

例:學生表student (id, name , *** )

成績表score (id ,math )

如何建立表,要求 有主鍵,有約束 解: create table student(id char(10), name varchar(8),*** char(1));

alter table student add constraint pk_student primary key(id);

create table score( id char(10),math number(5,2));

alter table score add constraint fk_scroe foreign key(id) references student(id);

* 主鍵與外來鍵: 鍵是表中的列(可以是一列,也可以是幾列),主鍵用於唯一的標識表中的資料項;外來鍵用於連線父表和子表。而所謂的父表和子表是根據3nf 正規化的要求,為了消除傳遞依賴,將原表拆成2個相互關聯的表,而這個關聯就是外來鍵。

7樓:匿名使用者

用外來鍵是為了限制兩張表的某些欄位必須有關聯,不至於出現邏輯錯誤。

比如說回

姓名錶答的欄位 id name[姓名] classid[班級id]

班級表 id name[班級名]

班級表的id就是姓名錶classid的外來鍵。

classid的值必須在班級表中純在,學生中該有班級把。

比如說班級表裡有 一年級,二年級·····你不可能讓classid的值等於學前班吧····

8樓:匿名使用者

tab1裡面有欄位ss

ss下有3個值1,2,3

如果tab2的欄位dd設定ss為外來鍵約束,則dd欄位裡面只會出現內值1,2,3

如果出現其它值,則會出錯

容.要想tab2中出現其他值,首先得先在tab1裡面有.

你現在可以發揮你的想象力了,起始可以用在很多方面的

9樓:匿名使用者

沒啥用處,就是用來限制資料的。如果連表操作錯誤,可以及時發現。

資料庫裡面建表和約束是什麼,建立資料庫表時建立表有什麼約束

約束check表示你插進資料庫表中的資料只能是哪個型別,或者區間等,就相當於只允許你輸入某一類資料,純手打,望採納 主鍵,外來鍵,自定義的各種約束,主鍵是唯一標示表中的一行資料的欄位,外來鍵用來建立表與表之間的聯絡,第三個是實際情況和使用者對錶中某些欄位的限制要求 建立資料庫表時建立表有什麼約束 a...

怎麼設定兩個主鍵在access資料庫表中

建立複合主鍵 可以指定多個欄位的組合用作表的主鍵,但是現在很 少這樣做。這種主鍵通常稱為複合主鍵。如圖2 23 所示,選擇要在複合主鍵中包括的多個欄位,然後單擊 工具 功能區選項卡中的鑰匙圖示。當然,如果在表設計中這些 欄位排列在一起會更有助於快速操作。開發人員強烈感覺到主鍵應該由資料庫中原本出現的...

資料庫表如何建立索引,在資料表中索引有什麼用,怎麼建立索引

可以建立索引的 至於建立聚集索引或者是非聚集索引,那要看你這個時間欄位的具體情況以及使用或變更頻繁程度。一般來說,適合建立聚集索引的要求 既不能絕大多數都相同,又不能只有極少數相同 的規則。先說說一個誤區 有人認為 只要建立索引就能顯著提高查詢速度。這個想法是很錯誤的。建立非聚集索引,確實,一般情況...