1樓:匿名使用者
主鍵是惟一的,但是主鍵可以是個集合,比如
學生表(學號,姓名,性別,班級)
其中每個學生的學號是唯一的,學號就是一個主鍵課程表(課程編號,課程名,學分)
其中課程編號是唯一的,課程編號就是一個主鍵成績表(學號,課程號,成績)
成績表中單一一個屬性無法唯一標識一條記錄,學號和課程號的組合才可以唯一標識一條記錄,所以 學號和課程號的屬性組是一個主鍵
2樓:尨蓇厵菭
有主鍵的表可以與其他表相關聯,無主鍵的話表與表之間無法關聯。
主鍵:表中經常有一個列或多列的組合,其值能唯一地標識表中的每一行。這樣的一列或多列稱為表的主鍵,通過它可強制表的實體完整性。
當建立或更改表時可通過定義 primary key 約束來建立主鍵。一個表只能有一個 primary key 約束,而且 primary key 約束中的列不能接受空值。由於 primary key 約束確保唯一資料,所以經常用來定義標識列。
作用:1)保證實體的完整性;
2)加快資料庫的操作速度
3) 在表中新增新記錄時,access會自動檢查新記錄的主鍵值,不允許該值與其他記錄的主鍵值重複。
4) access自動按主鍵值的順序顯示錶中的記錄。如果沒有定義主鍵,則按輸入記錄的順序顯示錶中的記錄。
3樓:始桂枝閔嬋
主鍵的值用於惟一地標識表中的某一條記錄,一個表只有一個主鍵。主鍵可以由一個欄位,也可以由多個欄位組成。
主鍵上會自動建立索引
4樓:匿名使用者
有主鍵就可以運用主鍵來確定資料庫的唯一一條記錄。查詢的時候只要根據主鍵就可以拿到相應紀錄,而不用逐個元素去匹配。
多個欄位為主鍵,就是說由幾個欄位才能確定唯一一條記錄。譬如銀行系統裡面,必須由國家 分行 賬號才能確定唯一一個賬號一樣。
5樓:匿名使用者
沒有主鍵,表中可以有重複的行;有主鍵不可以有重複的行。主鍵的好處是能唯一確定表中的行,體現到現實世界中就是能區別事物。多個欄位為表的主鍵代表這些欄位的值組合起來才能確定表中的一行,選課(學生學號,課程號,分數)主鍵為學號和課程號的組合,只有這兩個值確定了,選課表中的一行才能被唯一的確定。
6樓:匿名使用者
主鍵的作用是提高查詢效率
多個欄位為主鍵
打個比方
id 和name為組合主鍵
只有id和name同時相同時才認為是想通的記錄(主鍵是不允許重複的)
只有其中一個相同不認為是重複的記錄
新手問一個問題,資料庫表中主鍵和索引有啥區別和聯絡
7樓:第零象限
主鍵是來
表中的一個或多個欄位
自,它的值用於惟一地標識表中的某一條記錄.且不能為空;
索引是對資料庫表中一列或多列的值進行排序的一種結構,只有當經常查詢索引列中的資料時,才需要在表上建立索引,使用索引可快速訪問資料庫表中的特定資訊。
索引佔用磁碟空間,並且降低新增、刪除和更新行的速度。當然索引也有好處就是查詢速度快,它利還是大於弊的所以請慎重使用索引。
比如:一個學生表(t_stu )有1000條資料,給它id列建個主鍵和索引,
你想查詢id=1000;的這條資訊,如果沒有索引,它就一條一條的比對查詢,系統執行1000次才找到,要是建立了索引,你查詢id=1000的這條資訊,系統只執行一次就找到了。
8樓:
主鍵和索引完全是2嘛事....只能說主鍵擁有索引的一些特性
新到公司,發現資料庫表建立的時候沒有主鍵與表與表之間沒有外來鍵?
9樓:匿名使用者
很多優秀的專案都沒有主外來鍵關係的
舉個例子,一個張使用者表,一張訂單表,建立主外來鍵關係現在要刪除這個使用者,但是使用者曾經有過訂單(訂單不能刪除),你該怎麼刪除
約束表間關係的除了「主外來鍵」,還有程式的邏輯性,觸發器也可以
10樓:冥色煉獄
我們公司的2個**,其中一個sql2005的專案也是沒有采用主外來鍵的,其實這樣做事很方便將來的擴充套件和更新的。必要的儲存過程和系統檢視到時必須的
11樓:匿名使用者
這個倒不一定,如果設計時關係依存緊密的話,並且程式或表的觸發器等控制處理得好的話,也是可以的!
如果在開發之初一定加上外來鍵限制的話,很有可能會導致開發時有意外錯誤發生(例如:某欄位確實可以剔除時)
當然,庫表設計本來就是不斷完善的,如果考慮充分的話,加上當然會更好
12樓:匿名使用者
後期要改就費勁了,資料量大了難免有不在約束之內的,即使程式裡面約束了也難免會有出格的資料,而沒有約束在程式裡也容易出現各種錯誤(關係特別簡單的可能不會),絕大多數應該都是加主外來鍵的
13樓:雪漫山
..........................
bc,不要主鍵
資料庫表中的主鍵和外來鍵如何關聯
扈琇保瀚 主鍵 編輯本段 概念 主關鍵字 主鍵,primarykey 是被挑選出來,作表的行的惟一標識的候選關鍵字。一個表只有一個主關鍵字。主關鍵字又可以稱為主鍵。主鍵可以由一個欄位,也可以由多個欄位組成,分別成為單欄位主鍵或多欄位主鍵。編輯本段 作用 1 保證實體的完整性 2 加快資料庫的操作速度...
怎樣用SQL向資料庫中批量的插入資料,主鍵是隨機生成的
使用資料型別uniqueidentifier最合適了 建立表 create table a tmp primary id uniqueidentifier not null col1 varchar 10 collate chinese prc ci as null,col2 varchar 10 ...
資料庫中如何讓外來鍵自動填充主鍵的值
1.sql的主鍵和外來鍵的作用 2.外來鍵取值規則 空值或參照的主鍵值。1 插入非空值時,如果主鍵表中沒有這個值,則不能插入。2 更新時,不能改為主鍵表中沒有的值。3 刪除主鍵表記錄時,你可以在建外來鍵時選定外來鍵記錄一起級聯刪除還是拒絕刪除。4 更新主鍵記錄時,同樣有級聯更新和拒絕執行的選擇。3....