第五週學習筆記
08月13日
一:SQL基本語句
增刪改查
具體看我的博客
https://blog.csdn.net/jarvan5/article/details/106155205
二:數據庫五大範式範式
具體看我的博客
https://blog.csdn.net/jarvan5/article/details/106582777
三:JDBC的執行步驟
1.驅動
2.Connection
3.Statement
4.ResultSet(只有查詢需要)
5.release
具體查看我的博客
https://blog.csdn.net/jarvan5/article/details/106587295
四:什麼是事務
同時成功或者失敗的一組SQL
具體查看我的博客
https://blog.csdn.net/jarvan5/article/details/106380889
五:事務的四個特性
1.原子性(同時成功或者失敗)
2.隔離性,(會導致髒讀,幻讀,和不可重複讀取)
3.一致性(數據前後一致,參考銀行轉賬)
4.持久性(submit()後就持久了)
具體查看我的博客
https://blog.csdn.net/jarvan5/article/details/106380889
六:事務的隔離級別
設置級別 | 髒讀 | 不可重複讀 | 幻讀 |
---|---|---|---|
可讀未提交(read-uncommitted) | 會 | 會 | 會 |
只讀提交(read-committed) | 會 | 會 | |
可重複讀(repeatable-read) | 會 | ||
可序列化(serializable) |
具體查看我的博客
https://blog.csdn.net/jarvan5/article/details/106380889
七:索引的類別和每種索引的創建方式、
索引的分類
索引 | 介紹 |
---|---|
1.主鍵索引(primary key) | 一般表的id使用,一表一個 |
2.唯一索引(unique key) | 索引的值不能重複,比如微信號 |
3.默認索引(key) | 沒有任何限制,可空可重複,不知道有啥用 |
4.全文索引(fulltext) | 沒和match against 操作而不是where,先放數據在設置全文索引速度快些 |
5.組合索引 | 多個字段上創建的索引,查詢只有差第一個字段(最左)纔有效 |
具體查看我的博客
https://blog.csdn.net/jarvan5/article/details/106385445
八:聚簇索引和非聚簇索引的區別
innodb的主鍵就是聚簇索引,
myISAM 主鍵還是二級索引都是非聚簇索引。
1.非聚簇索引:
表和所有是分2部分儲存的,通過索引的查找找需要的表的數據的地址
2. 聚簇索引:
主鍵的葉子下包含了數據,其他索引指向主鍵:
- 所以InnoDB所有表一定要有主鍵,如果你自己沒有顯式定義主鍵,MySQL會自動選擇一個可以唯一標識的數據作爲主鍵,如果沒有unique的列,那mysql會自動創建一個隱式主鍵
- 還有一件事就是關於添加一個自增主鍵在磁盤上會,自動開闢新的連續的頁,極大的方便的查詢,速度增加,可維護性高,插入更快,而且有效減少儲存碎片。
具體分析參考我的博客
https://blog.csdn.net/jarvan5/article/details/106644032
九:B樹和B+樹的區別
B樹的存在就是爲的減少磁盤IO的影響(磁盤IO費時間的原因查看我的博客)
B + 樹(B+ Tree)是 B-Tree的升級版,性能更好:
具體查看我的博客
https://blog.csdn.net/jarvan5/article/details/106644032