[SQL ] 請問關於key在MySQL上的差異
mysql大概有三種key: primary unique index (從phpmyadmin上看到的)
想問一下這三種key在實際使用上的差異.....
1.
記得之前看一些比較理論的書時,好像每個table應該都要有一個primary
可是實際在mysql裡面建立table時並不需要給primary,可以直接建立
如果我不給primary key,會有什麼特別的效能差異嗎?
2.
在效能差異上,我知道如果不建立key,在搜尋的時候速度會非常慢
就三種key來說....
primary key=主要唯一鍵值
unique key=唯一
index key=單純建立所引
那....在實際使用上.....unique與primary差在哪呢?他們都是唯一阿
而且我自己使用的感覺上,這三種key都能提升速度
如果我今天的table只有兩個coulmn: id, name
很單純的一個概念:我要建立一個名單,每個名字都有一個唯一的編號
如果不考慮實際操作上的失誤,造成id重複的狀況
那麼我要把這個id設定成哪種呢?
感覺上....實際用起來效率三種都一樣
3.
假設我今天要存一個圖形的「邊」,內容有start end兩個,起始與結尾
我希望每組start與end都是唯一的
所以我把start與end兩個一組設定為unique key
那我還有必要把個別的start與end設定為index key來增加搜尋速度嗎?
謝謝大家
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.117.164.104