21個(gè)寫sql的好習(xí)慣

21個(gè)寫SQL的好習(xí)慣
1.寫完SQL先explain查看執(zhí)行計(jì)劃

2.操作delete或者update語(yǔ)句,加limit

3.設(shè)計(jì)表的時(shí)候所有的字段都添加相應(yīng)的注釋

4.SQL書寫格式,關(guān)鍵字大小寫一致,使用縮進(jìn)

5.insert語(yǔ)句表明對(duì)應(yīng)的字段名稱

6.變更SQL操作的時(shí)候在測(cè)試環(huán)境執(zhí)行,寫明詳細(xì)的操作步驟以及回滾方案,并在上生產(chǎn)前review

7.設(shè)計(jì)數(shù)據(jù)庫(kù)表的時(shí)候,加上三個(gè)字段:主鍵、create_time、update_time

8.寫完SQL語(yǔ)句,檢查where,order by,group by 后面的列,多表關(guān)聯(lián)的列是否已經(jīng)加索引。

9.修改或者刪除重要數(shù)據(jù)前,需要先備份

10.where 后面的字段要留意數(shù)據(jù)類型的隱式轉(zhuǎn)換

11.盡量把所有的列定義為not null

12.修改或者刪除SQL,先寫where差一下,確定后再補(bǔ)充delete或者update

13.減少不必要的字段返回

14.所有表必須使用innodb存儲(chǔ)引擎

15.數(shù)據(jù)庫(kù)和表字符集盡量使用統(tǒng)一UTF-8

一個(gè)3字節(jié)一個(gè)4字節(jié)
16.盡量使用varchar替代char

17.

18.SQL命令行修改數(shù)據(jù),養(yǎng)成begin+commit事務(wù)習(xí)慣

19.索引命名規(guī)范

20.where從句中不對(duì)列進(jìn)行函數(shù)轉(zhuǎn)換和表達(dá)式計(jì)算???

21.如果修改、更新數(shù)據(jù)過(guò)多,考慮批量進(jìn)行
