今天做的專案突然發現一條sql語句出現了問題。因為該條sql是我的導師寫的,他再發現問題後,又重新改了一下。他改過之後,我就去看他改的sql,之前他寫好之後讓我加上去,我當時感覺是看懂了的。現在出問題了再回過頭看時,卻沒有一點點的頭緒了。我發現自己做過東西之後真的是愛忘啊。真的是蛋疼。。。
後來我就硬著頭皮一直看,終於有頭緒了。看了新的sql再對比舊的sql時,我發現我在看sql的時候,知道我看懂,我花費了很長時間,大概幾個小時,其中很長的時間我感覺自己都是在漫無目的的看,看著不知道怎麼去分析。看了一點看不懂後,又回頭看。這樣反反覆覆看了很長時間,才理出了頭緒。我覺著我有必要總結一下看sql的方法,總結出來,自己注意一下,這樣的話,以後自己再看的時候也會快一點。
首先看sql的時候先看查詢的表,再看錶連線的條件。看看一定會出現的資料有哪些,接著再看最終篩選的條件和自己預期的是否相符合,這樣就可以判斷出自己寫的sql正不正確。
資料庫注意事項
主要就是6點 1.必須考慮業務唯一性並建復合唯一索引 2.所有字段盡量設定為not null 3.區分度低的字段不要建索引 4.邏輯外來鍵要建索引 5.用uuiddelete id varchar 32 not null default 做偽刪除 6.建議確定無負數的字段設定unsigned 建表時...
資料庫注意事項
索引會佔據瓷盤空間,資料越大索引佔據空間越大 mysql表中除了聚集索引外其他索引都是輔助索引 secondary index,也稱為非聚集索引 與聚集索引的區別是 輔助索引的葉子節點不包含行記錄的全部資料。聚焦索引 更適合between and和order by操作,每個表只能建立乙個聚焦索引 如...
unity連線資料庫注意事項
雖然在 unity3d 中能夠通過 playerprefs 類來儲存和讀取資料,但是一旦資料量增大,僅僅通過 的方式訪問資料,這樣的工作量是非常大的。那麼如何通過使用 sql server 資料庫來訪問資料呢?其實過程也非常簡單,過程如下 1 找到 system.data.dll 檔案,預設的位址是...