成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁(yè) > 知識(shí)庫(kù) > MySQL的主鍵命名策略相關(guān)

MySQL的主鍵命名策略相關(guān)

熱門(mén)標(biāo)簽:百應(yīng)電話(huà)機(jī)器人優(yōu)勢(shì) 怎樣在地圖標(biāo)注銷(xiāo)售區(qū)域 地圖標(biāo)注費(fèi)用是多少 曲靖移動(dòng)外呼系統(tǒng)公司 南昌三維地圖標(biāo)注 外呼系統(tǒng)打電話(huà)上限是多少 武漢網(wǎng)絡(luò)外呼系統(tǒng)服務(wù)商 電話(huà)外呼系統(tǒng)改號(hào) 啥是企業(yè)400電話(huà)辦理

最近在梳理數(shù)據(jù)生命周期管理的細(xì)節(jié)時(shí),發(fā)現(xiàn)了一個(gè)小問(wèn)題,那就是MySQL的主鍵命名策略,似乎會(huì)忽略任何形式的自定義命名。

也就意味著你給主鍵命名為idx_pk_id這種形式,在MySQL里面會(huì)統(tǒng)一按照PRIMARY來(lái)處理。

當(dāng)然我們可以在這個(gè)基礎(chǔ)之上做一些拓展和補(bǔ)充。

首先來(lái)復(fù)現(xiàn)下問(wèn)題,我們連接到數(shù)據(jù)庫(kù)test,然后創(chuàng)建表test_data2.

mysql> use test

mysql> create table test_data2 (id int ,name varchar(30));

Query OK, 0 rows affected (0.05 sec)

接著創(chuàng)建一個(gè)主鍵,命名為idx_pk_id,從執(zhí)行情況來(lái)看,MySQL是正常處理了。

mysql> alter table test_data2 add primary key idx_pk_id(id);
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0

為了進(jìn)一步對(duì)比,我們添加一個(gè)唯一性索引(輔助索引),來(lái)看看它們的差異。

mysql> alter table test_data2 add unique key idx_uniq_name(name);
Query OK, 0 rows affected (0.00 sec)
Records: 0 Duplicates: 0 Warnings: 0

查看主鍵命名方法1:使用show indexes命令

要查看MySQL索引的信息,使用show indexes from test_data2就可以。

mysql> show indexes from test_data2\G
*************************** 1. row ***************************
    Table: test_data2
  Non_unique: 0
   Key_name: PRIMARY
 Seq_in_index: 1
 Column_name: id
  Collation: A
 Cardinality: 0
   Sub_part: NULL
    Packed: NULL
     Null: 
  Index_type: BTREE
   Comment: 
Index_comment: 
*************************** 2. row ***************************
    Table: test_data2
  Non_unique: 0
   Key_name: idx_uniq_name
 Seq_in_index: 1
 Column_name: name
  Collation: A
 Cardinality: 0
   Sub_part: NULL
    Packed: NULL
     Null: YES
  Index_type: BTREE
   Comment: 
Index_comment: 
2 rows in set (0.00 sec)

查看主鍵命名方法2:使用數(shù)據(jù)字典information_schema.statistics

使用命令的方式不夠通用,我們可以使用數(shù)據(jù)字典information_schema.statistics來(lái)進(jìn)行數(shù)據(jù)提取。

mysql> select *from information_schema.statistics where table_schema='test' and table_name='test_data2' limit 20 \G        
*************************** 1. row ***************************
TABLE_CATALOG: def
 TABLE_SCHEMA: test
  TABLE_NAME: test_data2
  NON_UNIQUE: 0
 INDEX_SCHEMA: test
  INDEX_NAME: PRIMARY
 SEQ_IN_INDEX: 1
 COLUMN_NAME: id
  COLLATION: A
 CARDINALITY: 0
   SUB_PART: NULL
    PACKED: NULL
   NULLABLE: 
  INDEX_TYPE: BTREE
   COMMENT: 
INDEX_COMMENT: 
*************************** 2. row ***************************
TABLE_CATALOG: def
 TABLE_SCHEMA: test
  TABLE_NAME: test_data2
  NON_UNIQUE: 0
 INDEX_SCHEMA: test
  INDEX_NAME: idx_uniq_name
 SEQ_IN_INDEX: 1
 COLUMN_NAME: name
  COLLATION: A
 CARDINALITY: 0
   SUB_PART: NULL
    PACKED: NULL
   NULLABLE: YES
  INDEX_TYPE: BTREE
   COMMENT: 
INDEX_COMMENT: 
2 rows in set (0.00 sec)

查看主鍵命名方法3:使用show create table 命令

如果查看建表語(yǔ)句,會(huì)發(fā)現(xiàn)主鍵名已經(jīng)被過(guò)濾掉了。

mysql> show create table test_data2\G
*************************** 1. row ***************************
    Table: test_data2
Create Table: CREATE TABLE `test_data2` (
 `id` int(11) NOT NULL,
 `name` varchar(30) DEFAULT NULL,
 PRIMARY KEY (`id`),
 UNIQUE KEY `idx_uniq_name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.00 sec)
有的同學(xué)可能想,是不是分別執(zhí)行了create,alter語(yǔ)句導(dǎo)致處理方式有差異,我們可以一步到位,在create語(yǔ)句里面聲明主鍵名。
CREATE TABLE `test_data3` (
 `id` int(11) NOT NULL,
 `name` varchar(30) DEFAULT NULL,
 PRIMARY KEY idx_pk_id(`id`),
 UNIQUE KEY `idx_uniq_name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

這個(gè)時(shí)候查看建表語(yǔ)句,會(huì)發(fā)現(xiàn)結(jié)果和上面一樣,主鍵名都是PRIMARY.

mysql> show create table test_data3\G    
*************************** 1. row ***************************
    Table: test_data3
Create Table: CREATE TABLE `test_data3` (
 `id` int(11) NOT NULL,
 `name` varchar(30) DEFAULT NULL,
 PRIMARY KEY (`id`),
 UNIQUE KEY `idx_uniq_name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.00 sec)

查看主鍵命名方法4:查看約束命名

當(dāng)然還有多種驗(yàn)證方式,比如我們使用約束的方式來(lái)命名,得到的主鍵名都是PRIMARY.

CREATE TABLE IF NOT EXISTS `default_test` (
 `default_test`.`id` SMALLINT NOT NULL AUTO_INCREMENT,
 `default_test`.`name` LONGTEXT NOT NULL,
CONSTRAINT `pk_id` PRIMARY KEY (`id`)
);

查看主鍵命名方法5:使用DML報(bào)錯(cuò)信息

當(dāng)然還有其他多種形式可以驗(yàn)證,比如我們使用DML語(yǔ)句。

mysql> insert into test_data2 values(1,'aa');
Query OK, 1 row affected (0.02 sec)
mysql> insert into test_data2 values(1,'aa');
ERROR 1062 (23000): Duplicate entry '1' for key 'PRIMARY'

以上的方法都可以讓我們對(duì)這個(gè)細(xì)節(jié)有更深入的理解,當(dāng)然我們可以再深入一些。

查看主鍵命名方法6:官方文檔

官方文檔里面其實(shí)包含了這個(gè)信息,但是不是很明顯。

關(guān)于主鍵的描述,大體內(nèi)容如下,有一條是專(zhuān)門(mén)做了聲明,主鍵名為PRIMARY.

  • 一個(gè)表只能有一個(gè)PRIMARY KEY。
  • PRIMARY KEY的名稱(chēng)始終為PRIMARY,因此不能用作任何其他類(lèi)型的索引的名稱(chēng)。
  • 如果您沒(méi)有PRIMARY KEY,而應(yīng)用程序要求您在表中提供PRIMARY KEY,則MySQL將返回沒(méi)有NULL列的第一個(gè)UNIQUE索引作為PRIMARY KEY。
  • 在InnoDB表中,將PRIMARY KEY保持較短,以最小化輔助索引的存儲(chǔ)開(kāi)銷(xiāo)。每個(gè)輔助索引條目都包含對(duì)應(yīng)行的主鍵列的副本。
  • 在創(chuàng)建的表中,首先放置一個(gè)PRIMARY KEY,然后放置所有UNIQUE索引,然后放置非唯一索引,這有助于MySQL優(yōu)化器確定使用哪個(gè)索引的優(yōu)先級(jí),還可以更快地檢測(cè)重復(fù)的UNIQUE鍵。

查看主鍵命名方法7:源代碼

在sql_table.cc 里面對(duì)主鍵名稱(chēng)做了定義聲明。

const char *primary_key_name="PRIMARY";

順著這條路,可以看到在不同層的實(shí)現(xiàn)中的一些邏輯情況。

小結(jié):

通過(guò)這樣的一些方式,我們對(duì)主鍵的命名情況有了一個(gè)整體的認(rèn)識(shí),為什么會(huì)采用PRIMARY這樣一個(gè)命名呢,我總結(jié)了幾點(diǎn):

1)統(tǒng)一命名可以理解是一種規(guī)范

2)和唯一性索引能夠區(qū)別開(kāi)來(lái),比如一個(gè)唯一性索引非空,從屬性上來(lái)看很相似的,通過(guò)主鍵命名就可以區(qū)分出來(lái),在一些特性和索引使用場(chǎng)景中也容易區(qū)分。

3)主鍵是一個(gè)表索引的第一個(gè)位置,統(tǒng)一命名可以在邏輯判斷中更加清晰,包括字段升級(jí)為主鍵的場(chǎng)景等等。

4)在優(yōu)化器處理中也會(huì)更加方便,提高M(jìn)ySQL優(yōu)化器確定使用哪個(gè)索引的優(yōu)先級(jí)。

以上就是MySQL的主鍵命名策略相關(guān)的詳細(xì)內(nèi)容,更多關(guān)于MySQL 主鍵命名策略的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

您可能感興趣的文章:
  • 深入談?wù)凪ySQL中的自增主鍵
  • Mysql主鍵UUID和自增主鍵的區(qū)別及優(yōu)劣分析
  • 淺談MySQL中的自增主鍵用完了怎么辦
  • MySQL的自增ID(主鍵) 用完了的解決方法
  • 深入分析mysql為什么不推薦使用uuid或者雪花id作為主鍵
  • 詳解MySQL 表中非主鍵列溢出情況監(jiān)控
  • 使用prometheus統(tǒng)計(jì)MySQL自增主鍵的剩余可用百分比
  • Mysql 增加主鍵或者修改主鍵的sql語(yǔ)句操作

標(biāo)簽:黑河 吉林 資陽(yáng) 隨州 甘南 錦州 荊州 滄州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《MySQL的主鍵命名策略相關(guān)》,本文關(guān)鍵詞  MySQL,的,主鍵,命名,策略,;如發(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)文章
  • 下面列出與本文章《MySQL的主鍵命名策略相關(guān)》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于MySQL的主鍵命名策略相關(guān)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    国产精品裸体一区二区三区| 性欧美video高清bbw| 日韩美女视频免费在线观看| 国产精品区一区二区三| 国产91久久精品一区二区| 精品99久久| 日韩高清在线播放| 欧美激情黑白配| 污污在线观看| 在线观看日本一区| 中文字幕在线观看亚洲| 99免费在线观看| 91麻豆精品国产无毒不卡在线观看| 国产精选一区二区三区| 亚洲精品成人一区| 成人亚洲免费视频| 四虎永久国产精品| av中文字幕网| 色综合久久六月婷婷中文字幕| 国产精品三级av在线播放| 欧美第一页草草影院浮力| 自拍偷拍电影| 人妻体内射精一区二区三区| 日韩欧美视频一区二区| 老熟妇仑乱视频一区二区| 国产91精品一区二区| 小早川怜子久久精品中文字幕| 亚洲黄色尤物视频| 国产国产一区| 免费黄色片在线观看| 久久综合九色综合久久久精品综合| 久久久久成人精品免费播放动漫| 久久久国产一区二区三区四区小说| 国产视频每日更新| 欧洲精品99毛片免费高清观看| 国产网友自拍视频导航网站在线观看| 山东少妇露脸刺激对白在线| 国产欧美日韩视频一区二区| 日韩理论片在线观看| 欧美精品免费观看二区| 激情五月激情综合| 日本在线不卡一区二区| 99国产精品久久久久久久成人热| 国产高清日韩| 6699嫩草久久久精品影院| 无码一区二区三区在线| 国产视频一区二区在线| 中文字幕一二三区| 性网站在线观看| 日韩电影在线观看完整版| 一区二区三区日本视频| 亚洲一区二区久久| 国产人成一区二区三区影院| 久久成人国产精品| 亚洲tv在线| 在线看片线路1| www.欧美精品一二三区| 成人天堂噜噜噜| 欧美日韩在线三区| 在线播放av中文字幕| 欧美日韩性生活片| 久久免费视频66| 性欧美一区二区三区| 日韩一区二区影院| 亚洲精品suv精品一区二区| 国产wwwwwww| 欧美最猛性xxxxx(亚洲精品)| 色综合导航网站| 91精品国产入口在线| 成人免费视频国产在线观看| 欧美精品粉嫩高潮一区二区| 麻豆精品国产传媒av| 国产又黄又大又粗的视频| 老司机免费视频| 国产欧美日韩成人| 中文字幕精品一区| 国产精品成人一区二区三区吃奶| 91精品蜜臀一区二区三区在线| 国外色69视频在线观看| 九九久久久久99精品| 灌醉mj刚成年的大学平面模特| 91丨九色丨国产| 亚洲精品欧美日韩| 青青草视频在线青草免费观看| 成人在线播放网站| 日本一区二区三区国色天香| 夜鲁很鲁在线视频| 国产探花在线观看视频| 欧美日韩一级大片网址| 中文字幕无码日韩专区免费| www久久久com| 午夜探花在线观看| 在线看日韩av| 欧美啪啪网站| 97超超碰碰| 红桃一区二区三区| 91精品国产高清自在线| 大西瓜av在线| 成人综合婷婷国产精品久久| 亚洲av成人精品日韩在线播放| 国产精品亚洲综合一区在线观看| 日韩成人在线免费观看| 亚洲精品成人精品456| 伊人网在线免费| 国产普通话bbwbbwbbw| 99se视频在线观看| 亚洲欧美中文字幕| 日日夜夜精品网站| 成人影院免费观看| 久精品国产欧美| 一区二区成人在线视频| 日本丰满少妇裸体自慰| 欧美亚洲一二三区| 国产精品成久久久久| 国产婷婷一区二区三区久久| 日韩国产精品大片| 国产日韩成人内射视频| 日日欢夜夜爽一区| 在线观看国产成人| 日韩av首页| 亚洲第一在线播放| 特级毛片在线观看| 亚洲欧美日韩综合精品网| 欧美亚洲大片| 7777精品久久久大香线蕉小说| 久久午夜鲁丝片| 色婷婷综合久久久中字幕精品久久| 美女被人操视频在线观看| 男人的天堂最新网址| 成人免费看片39| 国产一区二区三区免费不卡| 在线观看亚洲国产| 女人色偷偷aa久久天堂| 欧美国产视频在线| 日韩中文字幕区一区有砖一区| 一级黄色a毛片| 五月综合激情在线| 污视频在线播放| 亚洲国产婷婷香蕉久久久久久| 久久嫩草捆绑紧缚| 999成人精品视频线3| 变态黄色小视频网站| 日韩av一区二区三区四区| 日韩精品一区二区三区色欲av| 波多野结衣久久精品| 国产一级理论片| 欧美aa免费在线| 日本熟妇成熟毛茸茸| 国产91精品久久久久久| 天堂资源在线中文精品| 亚洲美洲欧洲综合国产一区| 色呦呦视频在线观看| 一呦二呦三呦国产精品| 日韩精品欧美激情| 国产精品毛片久久久久久久| 国产超碰在线播放| 久久人妻免费视频| 四虎在线免费观看| 欧美日韩爱爱视频| 欧美在线一二三区| 久久精品国产亚洲blacked| 特种兵之深入敌后| 精品久久蜜桃| 狠狠入ady亚洲精品经典电影| 欧美人与性动xxxx| 97国产suv精品一区二区62| 日本精品三区| 成人福利一区| 国产韩日精品| 婷婷久久伊人| 亚洲第一网站| 国产91在线视频| 亚洲成人高清在线| 日韩欧美在线第一页| 韩国美女久久| 国产亚洲欧美日韩精品一区二区三区| 亚洲v日韩v欧美v综合| 国产日产亚洲系列最新| 一区二区三区鲁丝不卡| 欧美日韩一区二区综合| 久久精品亚洲麻豆av一区二区| 成人性生交xxxxx网站| 91av在线免费播放| 91精品国产综合久久香蕉最新版| 欧美色图亚洲天堂| www.成人在线| 色狠狠色狠狠综合| 青娱乐自拍偷拍| 久久国产成人午夜av影院宅| 久久精品一二区| 一区二区久久久| 精品国产aaa| 亚洲一区二区影院| 国产一区二区三区免费在线观看| 屁屁影院ccyy国产第一页| 免费在线看v| 欧美亚洲成人精品| 另类在线视频| 猫咪av在线| 国产欧美视频一区二区三区| 日韩中文字幕一区二区高清99| 一区二区成人网| 亚洲视频图片小说| 亚洲日本三级| 欧美极品视频在线观看| 在线免费观看日韩av| 欧美一区二区三区另类| 欧美日韩另类综合| 欧美va亚洲va日韩∨a综合色| 国产一级免费av| 免费h片在线观看| 欧美三级午夜理伦| 一二区成人影院电影网| 91国偷自产一区二区开放时间| 国产高潮免费视频| 国产日产高清欧美一区二区三区| 欧美另类z0zx974| 欧美 日韩 国产在线| 四虎影视网站| 懂色av蜜桃av| 久久精品视频免费在线观看| 欧美韩国日本不卡| 在线观看成人动漫| 亚洲国产高清在线观看视频| 成人福利在线观看视频| 毛片在线看网站| wwwav在线播放| 精品国模在线视频| 91黄色小视频| 国内精品福利视频| 欧美日韩ab片| 亚洲综合另类小说| 99re6热只有精品免费观看| 激情亚洲网站| 91美女精品| 欧美亚洲网站| 欧美a级大片在线| 男生操女生视频网站| 久久久久久久午夜| 亚洲高清久久| 五月天激情丁香| 日韩不卡高清| 国产jjizz一区二区三区视频| 国产精品一区二区久久| 男人插曲女人视频免费| 久久亚洲一区二区三区明星换脸| 欧美绝顶高潮抽搐喷水合集| 四虎影视免费看电影| 丰满熟女人妻一区二区三区| 中文字幕手机在线视频| 秋霞成人午夜伦在线观看| 日韩一区二区高清| 中日韩脚交footjobhd| 337p亚洲精品色噜噜| 黄污网站在线观看| 国产呦系列欧美呦日韩呦| 最新国产麻豆精品| 亚洲激情专区| 日本一区高清| 先锋av资源站| 日韩中文字幕不卡视频| 国产日韩欧美麻豆| 午夜3点看的视频| www.av导航| 亚洲综合在线免费| 日韩高清在线一区二区| 4438全国亚洲精品在线观看视频| 欧美日本一区二区在线观看| 高清欧美性猛交xxxx黑人猛交| 老熟妇精品一区二区三区| 日韩二区三区四区| 国产欧美一区二区三区视频在线观看| 天天射—综合中文网| 亚洲啊v在线免费视频| 成+人+亚洲+综合天堂| 亚洲精品亚洲人成在线观看| 欧美在线观看视频网站| 美女网站免费观看视频| 午夜精品久久99蜜桃的功能介绍| 国产美女高潮在线| 欧美在线观看一区二区| 亚洲小说欧美激情另类| 欧美高清videosex极品| 欧美特级一级片| 污网站在线免费| 精品999日本久久久影院| 永久免费看片视频教学| 蜜臀a∨国产成人精品| 爱草在线视频| 免费一级特黄录像| 3344国产永久在线观看视频| 男人天堂网站| 亚洲国产aⅴ成人精品无吗| 69**夜色精品国产69乱| 一本加勒比北条麻妃| 538精品视频| 91欧美视频在线| 素人啪啪色综合| 久久精品色图| 99久久婷婷国产综合精品| 一区二区三区精品视频在线观看| 亚洲国产欧美另类丝袜| 国产黄色片网站| 牛牛电影国产一区二区| 精品人体无码一区二区三区| 日韩成人在线播放| 在线欧美小视频| 你懂的国产在线| 久久精品伊人| 香蕉视频xxx| 久久精品亚洲欧美日韩精品中文字幕| 欧美激情精品久久| 亚洲欧美综合色| 日韩欧美在线番号| 久久福利小视频| 久久精品最新免费国产成人| 国产精品白丝jk黑袜喷水| 亚洲色图图片专区| 亚洲精品电影| 亚洲国产欧美一区二区丝袜黑人| 91麻豆精品久久毛片一级| 国产精品久久久久免费a∨大胸| 久久综合色鬼综合色| 欧美在线一二三| 亚洲天堂2018av| 国产免费一区二区视频| 亚洲精品久久在线| 2018天天操夜夜操|