之前主要使用oracle,最近幾個才開始使用mysql。發現mysql一些坑總結如下:
1. 字元比較竟然不區分大小。難以想象。。。。。
2. 表名在windows平台不區分大小寫,在unix/linux平台區分大小寫。 系統在windows平台測試通過,釋出到linux平台就不工作了。。。
3. 預設的事務隔離級别是repeatable read, oracle 預設的隔離級别是,read committed。 會出現一些詭異的問題, 這種語句 insert into A select B.* from B , C where B.id=C.id and B.id=123; 會把B,C表給鎖住 。。。
檢視這裡
4. 沒有樹狀查詢功能。Oracle可以使用connect by,非常友善。在mysql中,想要實作比較靈活的樹狀查詢隻能使用“子集劃分”方法。不然就隻能固定層次,把sql語句寫死吧。
還有其它坑以後遇到在補充。
我發現網上也有人把MYSQL與PostgreSQL對比。