佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > Mysql主鍵和唯一鍵的區(qū)別點(diǎn)總結(jié)

Mysql主鍵和唯一鍵的區(qū)別點(diǎn)總結(jié)

熱門標(biāo)簽:呼叫中心市場(chǎng)需求 AI電銷 鐵路電話系統(tǒng) 百度競(jìng)價(jià)排名 地方門戶網(wǎng)站 Linux服務(wù)器 網(wǎng)站排名優(yōu)化 服務(wù)外包

什么是主鍵?

主鍵是表中唯一標(biāo)識(shí)該表中每個(gè)元組(行)的列。主鍵對(duì)表實(shí)施完整性約束。表中只允許使用一個(gè)主鍵。主鍵不接受任何重復(fù)值和空值。表中的主鍵值很少更改,因此在選擇主鍵是需要小心,要選擇很少發(fā)生更改的地方。一個(gè)表的主鍵可以被另一個(gè)表的外鍵引用。

為了更好地理解主鍵,我們創(chuàng)建一個(gè)名為Student的表,它具有roll_number、name、batch、phone_number、citizen_id等屬性。

在上面的示例中,roll_number屬性永遠(yuǎn)不能具有相同的NULL值,因?yàn)樵诿總€(gè)大學(xué)中注冊(cè)的學(xué)生都擁有唯一的Roll_number,因此兩個(gè)學(xué)生不能擁有相同的Roll_number,并且表中的每一行都可以用學(xué)生的roll_number屬性作為唯一標(biāo)識(shí)。因此,在這種情況下,我們可以將Roll_number屬性作為主鍵。

什么是唯一鍵?

唯一鍵約束可以唯一地標(biāo)識(shí)關(guān)系或表中的單個(gè)元組。與主鍵不同,一個(gè)表可以有多個(gè)唯一鍵。唯一鍵約束只能接受列的一個(gè)空值;唯一約束也由另一個(gè)表的外鍵引用。當(dāng)有人想對(duì)非主鍵的列和列組實(shí)施唯一約束時(shí),可以使用它。

為了更好地理解唯一鍵,我們使用帶有Roll_number,Name,Batch,Phone_number和Citizen_ID屬性的Student表;其中Roll_number屬性已經(jīng)給主鍵。

在這個(gè)示例中,可以為Citizen_ID分配唯一約束,其中Citizen_ID列中的每個(gè)條目都應(yīng)該是唯一的,而不是重復(fù)的,因?yàn)橐粋€(gè)國(guó)家/地區(qū)的每個(gè)公民都必須擁有其唯一標(biāo)識(shí)號(hào)。但是,如果學(xué)生從其他國(guó)家遷移,在這種情況下,他或她將不具有Citizen_ID,并且該條目可能具有NULL值,因?yàn)樵谖ㄒ患s束中允許一個(gè)NULL。

主鍵和唯一鍵之間的主要區(qū)別:

1、當(dāng)一個(gè)屬性聲明為主鍵時(shí),它將不接受NULL值。另一方面,當(dāng)聲明為Unique的屬性時(shí),它可以接受一個(gè)NULL值。

2、表中只能有一個(gè)主鍵,但可以有多個(gè)唯一鍵。

3、定義主鍵時(shí)自動(dòng)創(chuàng)建聚簇索引。相反,Unique鍵生成非聚集索引。

以上就是關(guān)于Mysql主鍵和唯一鍵的區(qū)別的全部?jī)?nèi)容,感謝大家對(duì)腳本之家的支持。

您可能感興趣的文章:
  • 淺談MySQL中的自增主鍵用完了怎么辦
  • MySQL的自增ID(主鍵) 用完了的解決方法
  • 深入分析mysql為什么不推薦使用uuid或者雪花id作為主鍵
  • 詳解MySQL 表中非主鍵列溢出情況監(jiān)控
  • 使用prometheus統(tǒng)計(jì)MySQL自增主鍵的剩余可用百分比
  • Python3 操作 MySQL 插入一條數(shù)據(jù)并返回主鍵 id的實(shí)例
  • mysql非主鍵自增長(zhǎng)用法實(shí)例分析
  • MySQL中主鍵與rowid的使用陷阱總結(jié)
  • spring boot整合mybatis利用Mysql實(shí)現(xiàn)主鍵UUID的方法
  • MySQL的主鍵命名策略相關(guān)

標(biāo)簽:蘭州 衡水 仙桃 銅川 湖南 湘潭 崇左 黃山

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Mysql主鍵和唯一鍵的區(qū)別點(diǎn)總結(jié)》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    肇源县| 永胜县| 青冈县| 望江县| 荔浦县| 旌德县| 阿勒泰市| 南丹县| 东丽区| 眉山市| 巴林左旗| 宜兰市| 河东区| 安图县| 吕梁市| 新密市| 巢湖市| 双桥区| 东平县| 巴东县| 漳浦县| 嘉荫县| 右玉县| 合作市| 甘孜县| 江油市| 临安市| 酉阳| 平昌县| 江津市| 栾城县| 栾川县| 孝义市| 永新县| 瓮安县| 嘉义县| 安远县| 周口市| 临桂县| 丁青县| 博湖县|