最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Mysql事務(wù)索引知識匯總

 更新時間:2022年03月16日 11:20:39   作者:Lokemow  
這篇文章主要介紹了Mysql事務(wù)索引知識匯總,mysql事務(wù)是用于處理操作量大、復(fù)雜性高的數(shù)據(jù),索引能加快數(shù)據(jù)庫的查詢速度并高效獲取指定的數(shù)據(jù),下文相關(guān)詳細(xì)內(nèi)容,需要的小伙伴可以參考一下

一、事務(wù)

          mysql事務(wù)是用于處理操作量大、復(fù)雜性高的數(shù)據(jù)

1. 事務(wù)特性

  • 原子性:保證每個事務(wù)所有操作要么全部完成或全部不完成,不可能停滯在中間環(huán)節(jié);如事務(wù)在執(zhí)行過程中出現(xiàn)錯誤,則會回滾到一致性:事務(wù)開始結(jié)束后保證數(shù)據(jù)庫的完整性沒有被破壞,數(shù)據(jù)都是按照數(shù)據(jù)庫要求的規(guī)范寫入。
  • 隔離性:數(shù)據(jù)庫允許多個事務(wù)同時對數(shù)據(jù)進(jìn)行讀寫改操作,隔離性則可以防止多個事務(wù)由于交叉執(zhí)行時導(dǎo)致數(shù)據(jù)不一致;事務(wù)中隔離分為4個級別?!境霈F(xiàn):√ 不會出現(xiàn):×】
 

臟讀

不可重復(fù)讀幻讀
讀未提交

??

????
讀已提交??????
可重復(fù)讀??????
串行化??????

持久性:事務(wù)提交后對數(shù)據(jù)庫中的修改則是永久性的。

2. 事務(wù)并發(fā)時出現(xiàn)的問題

  • 臟讀:一個事務(wù)在處理過程中讀取了另一個未提交的事務(wù)數(shù)據(jù),當(dāng)未提交的數(shù)據(jù)提交后,最終導(dǎo)致數(shù)據(jù)不一致。
  • 不可重復(fù)讀:一個事務(wù)在多次進(jìn)行查詢返回數(shù)據(jù)時,另一個事務(wù)將數(shù)據(jù)修改后提交,導(dǎo)致前事務(wù)數(shù)據(jù)產(chǎn)生不同的結(jié)果。
  • 幻讀:A事務(wù)將數(shù)據(jù)修改完畢時,同一時間B事務(wù)新增一條數(shù)據(jù),A事務(wù)提交后查詢發(fā)現(xiàn)還有一條數(shù)據(jù)沒有進(jìn)行修改,好似產(chǎn)生幻覺一樣則為幻讀。

二、索引

    索引能加快數(shù)據(jù)庫的查詢速度并高效獲取指定的數(shù)據(jù)。

優(yōu)勢:

  • 提高數(shù)據(jù)檢索效率,降低數(shù)據(jù)庫IO成本
  • 通過索引列可以對數(shù)據(jù)進(jìn)行排序,降低CPU消耗
  • 確保數(shù)據(jù)唯一性
  • 加速表與表之間連接,實現(xiàn)表與表之間參照完整性

劣勢:

  • 占據(jù)磁盤空間
  • 降低更新表的效率

1. 索引使用

? ? ? ? 創(chuàng)建索引?? ??
? ? ? ? ? ? ? 普通索引:
? ? ? ? ? ? ? ? ? create index 索引名稱 on 表名(列名)

? ? ? ? ? ? ? 其他索引(舉例唯一索引unique): ?
? ? ? ? ? ? ? ? ? 公式:
? ? ? ? ? ? ? ? ? ? ? create unique index 索引名稱 on 表名(列名)
? ? ? ? ? ? ? ? ? 實例:
? ? ? ? ? ? ? ? ? ? ? create table Demo(id int,
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? name varchar(20),
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? sex int,
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? unique index Demo_id(id ASC));
? ? ? ? ? ? 刪除索引
? ? ? ? ? ? ? ? 刪除:
? ? ? ? ? ? ? ? ? ? 公式:
? ? ? ? ? ? ? ? ? ? ? ? drop index 索引名 on 表名;
? ? ? ? ? ? ? ? ? ? 實例:
? ? ? ? ? ? ? ? ? ? ? ? drop index Dmoe_id on Demo;

2. 索引類型

  • 主鍵索引(primary key):對主鍵進(jìn)行索引,主鍵不允許空值。
  • 普通索引(index/key):默認(rèn)類型,無限制,允許定義索引時有重復(fù)值和空值。
  • 唯一索引(unique key):專注于對唯一類型數(shù)據(jù)進(jìn)行索引,允許空值。 
  • 全文索引(full key):用于數(shù)值比較、范圍過濾、關(guān)鍵字匹配的范圍性快速查詢。 
  • 聯(lián)合索引:多列值組成索引,用于多列組合查詢。

3. 索引注意原則

  • 索引不是越多越好,數(shù)據(jù)量小的表不建議添加索引
  • 不建議在經(jīng)常增刪改操作的表中添加索引
  • 索引一般添加在需要索引的列上

三、SQL

             SQL是一種結(jié)構(gòu)化查詢語言,用于對數(shù)據(jù)進(jìn)行插入、查詢、更新、刪除操作來管理數(shù)據(jù)庫系統(tǒng)。

1. SQL優(yōu)點

  • 簡單易學(xué),操作性強(qiáng)
  • 大多數(shù)數(shù)據(jù)庫都支持SQL
  • SQL操作數(shù)據(jù)庫時大部分的工作由DBMS來完成

2. SQL分類

  • DDL[數(shù)據(jù)定義語言]:用于操作數(shù)據(jù)庫、表、列,常用語句create、alter、drop;
  • DML[數(shù)據(jù)操作語言]:用于操作數(shù)據(jù)庫中數(shù)據(jù),常用語句insert、update、delect;
  • DCL[數(shù)據(jù)控制語言]:用于操作訪問權(quán)限和安全級別,常用語句grant、deny;
  • DQL[數(shù)據(jù)查詢語言]:用于查詢數(shù)據(jù),常用語句select;

3. SQL語法及關(guān)鍵字                

  • insert into:數(shù)據(jù)插入操作,語法為insert into 表名(列1,列2)value(值1,值2),插入時列名和值需要一一對應(yīng)。
  • select from:數(shù)據(jù)查詢操作,語法為select * from 表名;*則代表全部列名,可通過輸入列名來查詢特定數(shù)據(jù)。
  • update set:更新操作,語法為update 表名 set 條件A where 條件B,條件A為修改條件,條件B為修改操作。
  • delete from:刪除操作,語法為delect from 表名 where 條件A,條件A為刪除條件。
  • where:用于sql中條件判斷、條件過濾等操作。
  • having:類似于where,一般使用于group by之后,與where區(qū)別在于where過濾行,having過濾組。
  • like:用于模糊查詢,主要只針對于“字符型”字段,常用"_"和"%"這兩種通配符,前者充當(dāng)占位符,后者代表匹配任意字符。
  • order by:用于數(shù)據(jù)排序,常用ASC升序排列和DESC降序排列。
  • group by:用于對字段進(jìn)行分組。
  • not:用于判斷表達(dá)式真假,類似于java語言中boolean。
  • and:用于在where子句后面將多個條件結(jié)合起來。
  • between:用于取兩個值之間的數(shù)據(jù)范圍。
  • lnner join:內(nèi)連接,多表連接時只會顯示滿足條件的數(shù)據(jù)結(jié)果。
  • left join:左連接,多表連接時只會以左表為基準(zhǔn)顯示左表全部數(shù)據(jù),右表只會顯示對應(yīng)數(shù)據(jù),若無對應(yīng)數(shù)據(jù)顯示null。
  • right join:右連接,與左連接相反;多表連接時只會以右表為基準(zhǔn)顯示左表全部數(shù)據(jù),左表只會顯示對應(yīng)數(shù)據(jù),若無對應(yīng)數(shù)據(jù)顯示null。
  • in:用于嵌套語句查詢,常用語子查詢中。

四、數(shù)據(jù)庫設(shè)計

1. 數(shù)據(jù)庫三大范式

  • 每個字段具有原子性不可再分。
  • 建立在第一范式的基礎(chǔ)上,確保數(shù)據(jù)庫表列中只保存一種數(shù)據(jù),不可以把多種數(shù)據(jù)保存在一個數(shù)據(jù)庫表列中。
  • 建立在地二范式的基礎(chǔ)上,數(shù)據(jù)不能存在傳遞關(guān)系,數(shù)據(jù)庫中每個字段和主鍵都是直接關(guān)系。

2. 數(shù)據(jù)庫規(guī)范設(shè)計

  • 系統(tǒng)需求分析
  • 概念結(jié)構(gòu)設(shè)計
  • 邏輯結(jié)構(gòu)設(shè)計
  • 物理結(jié)構(gòu)設(shè)計
  • 數(shù)據(jù)庫實施
  • 數(shù)據(jù)庫運(yùn)維

到此這篇關(guān)于Mysql事務(wù)索引知識匯總的文章就介紹到這了,更多相關(guān)Mysql事務(wù)索引內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

渭源县| 牙克石市| 昌图县| 阳曲县| 大城县| 瓦房店市| 凤翔县| 凤翔县| 怀集县| 泰来县| 沭阳县| 涟源市| 中超| 乐平市| 若羌县| 舒城县| 渭源县| 南投市| 二连浩特市| 碌曲县| 东乡| 郧西县| 扶绥县| 宁波市| 东明县| 栖霞市| 上杭县| 伊金霍洛旗| 中方县| 江北区| 中阳县| 定结县| 佛坪县| 郧西县| 汉源县| 谷城县| 潍坊市| 正蓝旗| 苍溪县| 汤原县| 比如县|