真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

mysql中的鍵和索引關(guān)系

下面一起來了解下MySQL中的鍵和索引關(guān)系,相信大家看完肯定會受益匪淺,文字在精不在多,希望mysql中的鍵和索引關(guān)系這篇短內(nèi)容是你想要的。

創(chuàng)新互聯(lián)從2013年開始,先為阿魯科爾沁等服務(wù)建站,阿魯科爾沁等地企業(yè),進行企業(yè)商務(wù)咨詢服務(wù)。為阿魯科爾沁企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

一、主鍵 索引 關(guān)系

1.主鍵:主鍵的唯一作用就是唯一標識表中的某一行數(shù)據(jù)。分為單一主鍵和聯(lián)合主鍵:
單一主鍵:只用一列就能唯一標識一行。
聯(lián)合主鍵:當使用一列已經(jīng)不能唯一標示一行的時候,就要采用多列唯一標識一行,就是聯(lián)合主鍵。聯(lián)合主健多個字段不能同時相同

2.索引:索引的作用就是提高數(shù)據(jù)的檢索速度,分為單一索引和聯(lián)合索引:
單一索引:只是用某一列數(shù)據(jù)作為索引,默認是index索引,這一列可以包含重復數(shù)據(jù);如果某一列不存在重復數(shù)據(jù)最好設(shè)置成unique形式的索引,比index的索引速度更快,在text數(shù)據(jù)上要使用fulltext索引。
聯(lián)合索引:為了更進一步提高檢索速度,每次檢索都需要用多列同時進行時,就可以把這多列設(shè)為聯(lián)合索引,提高索引速度,根據(jù)多列是否唯一,也分為index索引和unique索引。
聯(lián)合索引的使用必須注意:不能垮字段使用,比如a b c聯(lián)合索引 只有a|ab|abc 才能用上聯(lián)合索引字段。

3.主鍵一定是索引,但是索引不一定是主鍵。一個表只能有一個主鍵或聯(lián)合主鍵,但是可以有多個索引。
主鍵字段必須不能為空,但是索引字段可以為空。

二、外鍵和主健的關(guān)系

1.外鍵就是讓表中字段的值在參照表中的字段中選擇的一種約束標示
2.創(chuàng)建外鍵的條件
被參照字段必須是主鍵
參照字段和被參照字段必須是相同的數(shù)據(jù)類型
表的儲存引擎必須是innodb

三、語法格式

1.創(chuàng)建主鍵的命令格式

1.1.在創(chuàng)建表時創(chuàng)建主健
create table 表名(字段列表,primary key(需要設(shè)置成主健的字段名) auto_increment);  #auto_increment 是需要將主健字段設(shè)置成自動增長的關(guān)鍵字,如果主健不是整數(shù)類型或者不需要自動增長的時候不需要該關(guān)鍵字;當需要設(shè)置聯(lián)合主鍵時,多個需要設(shè)置成主健的字段名之間用逗號隔開,而且不能使用自動增長`
或者

create table 表名(主健字段 字段類型 primary key auto_increment,字段列表);#此方法在創(chuàng)建聯(lián)合主健時不可用
1.2.在已經(jīng)創(chuàng)建好的表上創(chuàng)建主健(如果該表中已經(jīng)存在數(shù)據(jù),且數(shù)據(jù)違反了主鍵約束,則無法創(chuàng)建主健,需要解決數(shù)據(jù)沖突后再創(chuàng)建)
alter table 表名 add primary key(需要設(shè)置成主健的字段名) auto_increment;

2.創(chuàng)建外鍵的命令格式

2.1.在創(chuàng)建表時創(chuàng)建外鍵(滿足創(chuàng)建外鍵的條件下)
create table 表名(字段列表,foreign key(需要創(chuàng)建外鍵約束的字段) references 被參照表的表名(被參照表的被參照字段) on update cascade on delete cascade)engine=innodb;
如果外鍵需要具有唯一標示的時候還可以在外鍵上加上主健約束
2.2.在已經(jīng)存在的表中創(chuàng)建外鍵
alter table 表名 add foreign key(字段名) references 參考表名(參考字段名) on update casecade on delete cascade) engine=innodb;

3.創(chuàng)建索引的命令格式

3.1.創(chuàng)建表的時候創(chuàng)建索引(索引可以有多個,在以下示例中添加的是兩個)
create table 表名(字段列表,index(已經(jīng)存在字段名),index(已經(jīng)存在的字段名));#如果是聯(lián)合索引的多個已經(jīng)存在字段名用,隔開,記住不能跨字段設(shè)置聯(lián)合索引
默認的索引名和字段名相同
3.2.把已經(jīng)存在的表中的字段設(shè)置為索引字段
create index 索引名稱  on 表名(字段名)
索引名可以自己命名  一般使用字段名作為索引名

4.創(chuàng)建唯一索引的命令格式和普通索引的格式相似只需要保證字段記錄的唯一性就可以使用unique關(guān)鍵字

看完mysql中的鍵和索引關(guān)系這篇文章后,很多讀者朋友肯定會想要了解更多的相關(guān)內(nèi)容,如需獲取更多的行業(yè)信息,可以關(guān)注我們的行業(yè)資訊欄目。


當前標題:mysql中的鍵和索引關(guān)系
URL分享:http://weahome.cn/article/jhjepo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部