MySQL學習筆記(個人隨手筆記)

2021-10-06 17:30:42 字數 964 閱讀 1031

索引:索引是幫助mysql高效獲取資料的資料結構

索引建立語句:create index 索引名 on 表名(欄位名)

當你查詢資料庫時,如果該列沒有加索引,則查詢時是遍歷操作,而加了索引就是定位,能夠很快查詢到資料(一般在百萬級資料中才能體現出來索引的優勢)

索引原則:

1、索引不是越多越好

2、不要對經常變動的資料加索引

3、小資料量不要加索引

4、索引一般加在常用來查詢的字段

事務:將一組sql放在乙個批次中執行

事務的acid原則

1、原子性:要麼都成功,要麼都失敗

2、一致性:事務前後的資料庫完整性要保持一致

3、永續性:事務一旦提交,則不可逆,被持久到資料庫中

4、隔離性:多個使用者併發訪問資料庫時,資料庫為每個使用者開啟的事務,不能被其他事務的操作所干擾。

髒讀:乙個事務讀取了另乙個事務沒有提交的資料

不可重複讀:多次讀取結果不一致

虛讀(幻讀):前後讀取不一致

myisam 節約空間,速度較快

innodb 安全性高,事務的處理,多表使用者操作

delete:

1、innodb 自增列會從1開始(存在記憶體中的,斷電即失)

2、myisam 繼續從上乙個自增量開始(存在檔案當中,不會丟失)

truncate:

不會印象事務,自增重新從1開始

count(欄位名)、count(*)、count(1)區別

cout(欄位名):會忽略所有的null值,沒有主鍵時效率高

count():不會忽略所有的null值,本質是計算行數

count(1):不會忽略所有的null值,本質計算行數,效率比count()略高

MySql隨手筆記

1,acid 資料庫事務正常執行的四個基本要素 2,多表查詢的三種連線方式,2.1 交叉連線,表1cross join 表2。查詢兩張表的結果,不會對錶的結果過濾,使用場景很少。返回的結果集是兩張表的笛卡爾集,比如第一張表 有4條記錄,第二張表有4條記錄,即4 4 16條。2.2 內連線,selec...

oracle隨手筆記

1.儲存過程中is和as沒區別檢視 用is 游標 用as 不能反過來,其他情況沒區別 2.trim是用來去除字串開頭和結尾的函式 用法 select trim leading trailing both 你要刪的東西 from 被刪的字串 test trim from dual both後面沒有引數...

C 隨手筆記

成員變數在使用初始化列表初始化時,與建構函式中初始化成員列表的順序無關,只與定義成員變數的順序有關。因為成員變數的初始化次序是根據變數在記憶體中次序有關,而記憶體中的排列順序早在編譯期就根據變數的定義次序決定了。這點在effectivec 中有詳細介紹。如果不使用初始化列表初始化,在建構函式內初始化...