国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

浙江新華建設(shè)有限公司官方網(wǎng)站站長seo查詢

浙江新華建設(shè)有限公司官方網(wǎng)站,站長seo查詢,微信小程序推廣平臺,wordpress分類網(wǎng)站目錄 ?索引 ?什么是索引 ?索引的數(shù)據(jù)結(jié)構(gòu) ?索引的使用 ?事務(wù) ?什么是事務(wù) ?事務(wù)的特性 ?事務(wù)的使用 ?索引 ?什么是索引 索引是存儲在磁盤上的一個(gè)數(shù)據(jù)結(jié)構(gòu),通過索引可以快速地定位到存儲在磁盤上的數(shù)據(jù)。 索引在提高查詢速度的同時(shí),還提…

目錄

?索引

?什么是索引

?索引的數(shù)據(jù)結(jié)構(gòu)

?索引的使用

??事務(wù)

?什么是事務(wù)

?事務(wù)的特性

?事務(wù)的使用


?索引

?什么是索引

索引是存儲在磁盤上的一個(gè)數(shù)據(jù)結(jié)構(gòu),通過索引可以快速地定位到存儲在磁盤上的數(shù)據(jù)。

索引在提高查詢速度的同時(shí),還提高了增刪改(增刪改的同時(shí)還需要額外調(diào)整索引)和空間的開銷(構(gòu)建索引需要額外的磁盤空間)。

?索引的數(shù)據(jù)結(jié)構(gòu)

索引的目的是為了加快查詢速度,在我們已知的數(shù)據(jù)結(jié)構(gòu)中,雖然哈希表查詢的時(shí)間復(fù)雜度(O(1))最低,但哈希表并不能查詢指定范圍的數(shù)據(jù),故并不適合構(gòu)成MySQL里的索引而二叉搜索樹雖然能查詢指定范圍,但由于是二叉,當(dāng)數(shù)據(jù)量大時(shí),樹的高度就會比較高,元素之間的比較次數(shù)就多,讀硬盤的次數(shù)也就會變多,從而速度就會降低,故也不是很適合構(gòu)成MySQL里的索引。那MySQL里的索引底層到底是什么呢?其實(shí)它的底層是一種名叫B+樹的數(shù)據(jù)結(jié)構(gòu)。

B+樹具有以下特點(diǎn):

①.B+樹是一顆N插搜索樹,每個(gè)節(jié)點(diǎn)有N個(gè)key,N個(gè)key劃分出N個(gè)區(qū)間,最后一個(gè)key為所在區(qū)間的最大值

②.父節(jié)點(diǎn)的key會在子節(jié)點(diǎn)中重復(fù)出現(xiàn),并且是該子節(jié)點(diǎn)的最大值,這樣葉子節(jié)點(diǎn)就包含所有數(shù)據(jù)的全集

③.葉子結(jié)點(diǎn)會以類似鏈表的形式互相連接

B+樹由于是N叉搜索樹,故高度會比二叉搜索樹低,從而讀取硬盤的次數(shù)就比較低;B+樹的所有的查詢都是落在葉子節(jié)點(diǎn)上,中間比較次數(shù)差不多,故查詢操作比較均衡;由于B+數(shù)的葉子節(jié)點(diǎn)包含所有數(shù)據(jù),故只需在葉子節(jié)點(diǎn)存放具體數(shù)據(jù),非葉子節(jié)點(diǎn)只需存放索引值即可,這樣極大節(jié)省了內(nèi)存空間,就有可能將非葉子節(jié)點(diǎn)放進(jìn)內(nèi)存中緩存,進(jìn)一步降低硬盤IO的次數(shù)。

?索引的使用

?查看索引
創(chuàng)建主鍵約束( PRIMARY KEY )、唯一約束( UNIQUE )、外鍵約束( FOREIGN KEY )時(shí),會自動創(chuàng)建對應(yīng)列的索引:
語法: show index from 表名;
mysql> create table student(id int primary key auto_increment, name varchar(20));
Query OK, 0 rows affected (0.06 sec)mysql> show index from student;
+---------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| Table   | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
+---------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| student |          0 | PRIMARY  |            1 | id          | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
+---------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
1 row in set (0.01 sec)
?創(chuàng)建索引
對于非主鍵、非唯一約束、非外鍵的字段,可以創(chuàng)建普通索引:
語法: create index 索引名 on 表名(列名);
mysql> create index idx_student_name on student(name);
Query OK, 0 rows affected (0.05 sec)
Records: 0  Duplicates: 0  Warnings: 0mysql> show index from student;
+---------+------------+------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| Table   | Non_unique | Key_name         | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
+---------+------------+------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| student |          0 | PRIMARY          |            1 | id          | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| student |          1 | idx_student_name |            1 | name        | A         |           0 |     NULL | NULL   | YES  | BTREE      |         |               |
+---------+------------+------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
2 rows in set (0.00 sec)

?刪除索引
語法: drop index 索引名 on 表名;
mysql> drop index idx_student_name on student;
Query OK, 0 rows affected (0.03 sec)
Records: 0  Duplicates: 0  Warnings: 0mysql> show index from student;
+---------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| Table   | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
+---------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| student |          0 | PRIMARY  |            1 | id          | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
+---------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
1 row in set (0.00 sec)

注:

①.創(chuàng)建索引最好是在表創(chuàng)建之初執(zhí)行,如果對已有大量數(shù)據(jù)的表創(chuàng)建索引會吃掉大量磁盤IO,花費(fèi)很長時(shí)間

②.可以使用explain關(guān)鍵字顯示出查詢過程中具體的索引使用情況

③.每個(gè)索引列都有對應(yīng)的B+樹,對于非主鍵列的索引會先查詢該索引列的B+樹,再根據(jù)查詢結(jié)果查詢主鍵列的B+樹

??事務(wù)

?什么是事務(wù)

事務(wù)是指在數(shù)據(jù)庫中進(jìn)行的一組相關(guān)的操作,被當(dāng)作一個(gè)單獨(dú)的工作單元處理,要么全部執(zhí)行,要么全部回滾。

?事務(wù)的特性

事務(wù)具有以下四個(gè)特性:

??Atomicity(原子性):一個(gè)事務(wù)中的所有操作要么全部成功,要么全部失敗,不能只執(zhí)行其中部分操作。

??Consistency(一致性):事務(wù)執(zhí)行前后數(shù)據(jù)庫的狀態(tài)必須保持一致,也就是滿足數(shù)據(jù)庫的約束和規(guī)則。

? Isolation(隔離性):當(dāng)多個(gè)事務(wù)同時(shí)執(zhí)行時(shí),每個(gè)事務(wù)都應(yīng)該被視為獨(dú)立的,不能相互影響。每個(gè)事務(wù)必須獨(dú)立執(zhí)行,并發(fā)執(zhí)行時(shí)不能出現(xiàn)干擾。

? Durability(持久性):事務(wù)完成后,其所作的修改應(yīng)該永久保存在數(shù)據(jù)庫中,即使系統(tǒng)出現(xiàn)故障也不應(yīng)該丟失。

?事務(wù)的使用

MySQL中開啟事務(wù)的語句為start transaction,提交事務(wù)的語句為commit,回滾事務(wù)的語句為rollback。事務(wù)的使用可以保證數(shù)據(jù)的一致性和完整性,避免數(shù)據(jù)損壞和丟失。

mysql> start transaction;
Query OK, 0 rows affected (0.00 sec)mysql> insert into student values(1,"張三");
Query OK, 1 row affected (0.02 sec)mysql> update student set name="李四" where name="張三";
Query OK, 1 row affected (0.02 sec)
Rows matched: 1  Changed: 1  Warnings: 0mysql> commit;
Query OK, 0 rows affected (0.00 sec)
http://m.aloenet.com.cn/news/35381.html

相關(guān)文章:

  • 收藏的網(wǎng)站從做系統(tǒng)后找不到了東莞關(guān)鍵詞優(yōu)化推廣
  • 營銷型網(wǎng)站有哪些出名的沈陽seo關(guān)鍵詞排名
  • 政府網(wǎng)站建設(shè)網(wǎng)頁設(shè)計(jì)規(guī)范網(wǎng)站seo診斷
  • 做網(wǎng)站客戶沒有付定金seo百度發(fā)包工具
  • 旅行網(wǎng)站開發(fā)需求說明書百度網(wǎng)頁怎么制作
  • 重慶網(wǎng)站制作開發(fā)重慶seo技術(shù)博客
  • 上海博大園林建設(shè)發(fā)展有限公司網(wǎng)站app推廣代理平臺
  • 網(wǎng)站備案需要多少錢免費(fèi)宣傳平臺有哪些
  • 建設(shè)網(wǎng)站的叫什么職位谷歌搜索引擎入口google
  • 做商城網(wǎng)站需要什么排行榜軟件
  • 安卓端開發(fā)優(yōu)化排名推廣教程網(wǎng)站
  • pc官方網(wǎng)站seo推廣優(yōu)化外包價(jià)格
  • 省示范院校建設(shè)網(wǎng)站seo入門教程網(wǎng)盤
  • 網(wǎng)站設(shè)計(jì)師培訓(xùn)學(xué)校吳中seo頁面優(yōu)化推廣
  • 網(wǎng)站橫幅代碼優(yōu)化seo招聘
  • 購物網(wǎng)站APP廣州seo公司品牌
  • 找網(wǎng)站公司做網(wǎng)站的陷阱友情鏈接代碼
  • 工廠采購信息網(wǎng)深圳優(yōu)化公司哪家好
  • 林州網(wǎng)站建設(shè)服務(wù)關(guān)鍵詞分類哪八種
  • 網(wǎng)站建設(shè) 石景山windows優(yōu)化大師卸載不了
  • 模板網(wǎng)站制作成都百度推廣優(yōu)化創(chuàng)意
  • 西昌有做網(wǎng)站的公司嗎怎樣推廣公司的網(wǎng)站
  • 日本一級做a在線播放免費(fèi)視頻網(wǎng)站網(wǎng)站制作詳細(xì)流程
  • 美橙網(wǎng)站建設(shè)怎么做全國疫情最新數(shù)據(jù)
  • 學(xué)校網(wǎng)站開發(fā)招標(biāo)網(wǎng)絡(luò)推廣優(yōu)化品牌公司
  • 美女做曖曖網(wǎng)站關(guān)鍵詞排名推廣軟件
  • 虎門仿做網(wǎng)站一鍵生成個(gè)人網(wǎng)站
  • 怎么把做的網(wǎng)站放到騰訊云里面代寫文章哪里找寫手
  • 聊城做網(wǎng)站優(yōu)化百度投訴中心人工電話
  • 做宣傳可以在哪些網(wǎng)站上發(fā)布如何營銷推廣自己的產(chǎn)品