天天看點

Mysql資料庫基礎知識整理Mysql資料庫基礎知識整理資料庫并發問題Mysql資料庫調優1,範式問題2,sql語言分類

Mysql資料庫基礎知識整理

參考資料:

MySQL分區:https://www.bilibili.com/video/BV1E7411q7Nx

MySQL_基礎+進階篇- 資料庫 -sql -mysql教程_mysql視訊_mysql入門_尚矽谷:https://www.bilibili.com/video/BV12b411K7Zu

實體書籍:資料庫事務并發處理的藝術 事務管理與并發控制 李海翔 等著

博文中部分圖檔和文字源自網絡。部分文字,因學習時記錄的筆記時間已久遠,無法找到出處,侵删。

資料庫并發問題

Mysql資料庫事務的實作方式及并發相關:  https://blog.csdn.net/qq_41605114/article/details/108716218

Mysql資料庫調優

Mysql資料庫調優——分區: https://blog.csdn.net/qq_41605114/article/details/108693426

Mysql資料庫調優——索引:https://blog.csdn.net/qq_41605114/article/details/108693457

1,範式問題

1.1 函數依賴

函數依賴:A------->B,如果通過A屬性(屬性組)的值,可以确定唯一B屬性的值。則稱B依賴于A

                學号-------->姓名,(學号,課程)--------->分數

完全函數依賴:A------->B,如果A是一個屬性(屬性組),則B屬性值得确定需要依賴于A屬性組中所有的屬性值

                   (學号,課程)---------> 分數

部分函數依賴:A------->B,如果A是一個屬性(屬性組),則B屬性值得确定隻需要依賴于A屬性組中一項的屬性值

                   (學号,課程)--------->姓名

傳遞函數依賴:A------->B,B------->C,如果A屬性(屬性組)的值,可以确定唯一的B屬性的值,再通過B屬性(屬性組)的值可以确定唯一屬性的值,則稱C傳遞函數依賴于A

                      學号------->系名,系名------->系主任

1.2 第一/二/三範式

了解了函數依賴,就可以了解第一/第二/第三範式了。

第一範式:如果資料庫表中的所有字段值都是不可分解的原子值,就說明該資料庫表滿足了第一範式

第二範式:第二範式需要確定資料庫表中的每一列都和主鍵相關,消除部分函數依賴

第三範式:確定資料表中的每一列資料都和主鍵直接相關,而不能間接相關,消除傳遞函數依賴

2,sql語言分類

1,資料定義語言DDL(Data Definition Language)

create,drop,alter

主要為以上操作,即對邏輯結構等有操作的,其中包含表結構,視圖和索引。

2,資料查詢語言DQL(Data Query Language)

以select為關鍵字,各種簡單查詢,連接配接查詢等,都屬于DQL

3,資料操縱語言DML(Data Manipulation Language)

Insert,update,delete

主要為以上操作,即對資料進行操作的,對應上面所說的查詢操作DQL和DML共同建構了多數初級程式員常用的增删改查操作。

查詢被劃分到了DQL中。

4,資料控制功能DCL(Data Control Language)

commit,rollback等