線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:7931
推到 Plurk!
推到 Facebook!

資料庫的鍵值定義主鍵 /索引鍵,其真正的意義為何??

答題得分者是:pcboy
ANDY8C
資深會員


發表:114
回覆:582
積分:299
註冊:2006-10-29

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-05-26 17:53:11 IP:211.74.xxx.xxx 未訂閱
請問 資料庫的鍵值定義,其真正的意義為何?? 有相依關係或互斥關係要注意嗎?? 設的不好,會很明顯的影響查詢效能嗎?? 主鍵 (PRIMARY) ?? 索引鍵 (INDEX) ?? 唯一鍵 (UNIQUE) ?? 全文檢索 ?? 謝謝您 -------------------------------- 這一網站,真的不錯!!
------
---------------------------------------
偶爾才來 KTOP ,交流條碼問題,在 FB [條碼標籤達人] 社團留言,感恩.
pcboy
版主


發表:177
回覆:1838
積分:1463
註冊:2004-01-13

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-05-27 00:24:19 IP:203.204.xxx.xxx 未訂閱
PRIMARY KEY 和 foreign key 是相對的 : 學號 姓名 所屬系所 85212007 張振洋 國企系 85212008 王淑芬 國企系 85213009 俞旭昇 資管系 下面這個Relation則是學生的選課資料: 課號 學年期 班別 學號 成績 040001 862 0 85212007 80 040001 862 0 85212009 69 040002 862 0 85212007 80 若某一組屬性可以唯一決定某一筆資料, 則稱這一組屬性為key. 我們可以設定某一個key為primary key. 若某一組屬性要對照到另一個Relation 的primary key, 則稱該組屬性為foreign key. 如學生資料中的primary key 為(學號), 選課資料的primary key為(學號,學年期,課號). 選課資料中的學號必需參考到學生資料中的學號, 因此我們說選課資料有一個foreign key (學號)參考到學生資料這個Relation. http://www.csie.ncnu.edu.tw/~ssyu/course/IBSDB/lecture3.html 索引鍵 (INDEX) ?? INDEX KEY 是用來加快搜尋動作的, 例如 姓名 歲數 --------- 趙大 30 趙二 28 趙三 26 王大 29 王二 27 王三 25 如果要搜尋年齡 25 歲的人, 要到第 6 筆才找到 如果 對 "歲數" 這個欄位建立 INDEX, 第一筆就可以找到 歲數 ---- 25 26 27 28 29 30 唯一鍵 (UNIQUE) ?? 就是任兩筆的這個欄位內容不會重複, 例如身分字號欄位 全文檢索 ?? 用關鍵字去搜尋該網站上任何網頁上的文字 就是全文檢索 便宜的全文檢索 只能搜尋網頁 更強的 可以搜尋 doc, xls, pdf, ... 文件內容 更更強的 連資料庫內容都可以 搜尋 發表人 - pcboy2 於 2005/05/27 00:32:43
------
能力不足,求助於人;有能力時,幫幫別人;如果您滿意答覆,請適時結案!

子曰:問有三種,不懂則問,雖懂有疑則問,雖懂而想知更多則問!
ANDY8C
資深會員


發表:114
回覆:582
積分:299
註冊:2006-10-29

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-05-27 01:49:09 IP:211.74.xxx.xxx 未訂閱
引言: 索引鍵 (INDEX) ?? INDEX KEY 是用來加快搜尋動作的, 例如 姓名 歲數 --------- 趙大 30 趙二 28 趙三 26 王大 29 王二 27 王三 25 如果要搜尋年齡 25 歲的人, 要到第 6 筆才找到 如果 對 "歲數" 這個欄位建立 INDEX, 第一筆就可以找到 歲數 ---- 25 26 27 28 29 30 唯一鍵 (UNIQUE) ?? 就是任兩筆的這個欄位內容不會重複, 例如身分字號欄位 發表人 - pcboy2 於 2005/05/27 00:32:43
1. 如果 A TABLE(MASTER) 的欄位有 學號,姓名......等 B TABLE(DETAIL) 的欄位有 學號,修課代號(同一學號,有許多不同的修課代號...),......等 此 A,B 要做成 MASTER-DETAIL 的關係 資料庫的欄位關係如何建立最好???? 假設 A 有設 INDEX 用 學號 欄位 B 也要設定 INDEX 時,是僅用學號就好, 還是 學號 修課代號 也可以呢?? 2. 唯一鍵 (UNIQUE) , 與 PRIMARY 有何不同 ?? 謝謝您 !! -------------------------------- 這一網站,真的不錯!!
------
---------------------------------------
偶爾才來 KTOP ,交流條碼問題,在 FB [條碼標籤達人] 社團留言,感恩.
lcjan
初階會員


發表:11
回覆:60
積分:29
註冊:2002-03-13

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-05-27 09:07:03 IP:203.70.xxx.xxx 未訂閱
引言: 2. 唯一鍵 (UNIQUE) , 與 PRIMARY 有何不同 ??
PRIMARY KEY, 通常指不重複(UNIQUE)條件的索引(INDEX), 也就是說你可以將已經建立索引(INDEX)的欄位加上惟一性(UNIQUE), 也等同於PRIMARY KEY. UNIQUE, 是一種限制條件(CONSTRAINT) 如果觀念有錯誤, 煩請前輩指正.
pillar62
資深會員


發表:9
回覆:324
積分:271
註冊:2002-04-15

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-05-27 09:46:08 IP:210.64.xxx.xxx 未訂閱
你好 插個花 1. 此 A,B 要做成 MASTER-DETAIL 的關係 資料庫的欄位關係如何建立最好???? 一般來說,我們會用主檔名細都有的欄位來作關聯,所以應該是用學號!! 假設 A 有設 INDEX 用 學號 欄位 B 也要設定 INDEX 時,是僅用學號就好, 還是 學號 修課代號 也可以呢?? 其實,索引要設幾個都可以,這是增加查詢的速度,但是要注意的是,如果索引太多的時候,會造成新增存檔時的速度會變慢,因為在新增資料時,資料庫必須要同時將鍵值傳到索引中,所以可想而知,索引越多,新增時的速度就會越慢!! 這些相關的資料處理方式,建議可以看一下有關於資料正規化的資料!!應該有幫助喔!! Pillar Wang
------
Pillar Wang
xu_caishen
一般會員


發表:6
回覆:20
積分:5
註冊:2005-04-15

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-05-27 14:33:25 IP:218.14.xxx.xxx 未訂閱
主鍵 (PRIMARY) 索引鍵 (INDEX) 唯一鍵 (UNIQUE) 主鍵的意義是記錄的唯一標志;索引鍵的作用在於提高查找記錄的執行效率; 主鍵和唯一鍵都是索引鍵的一種。索引設的不好當然會影響查詢效能。不過一般是在資料庫較大的時候表現得比較明顯。
系統時間:2024-04-20 17:37:16
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!