前段時間進行了關於資料庫和後台執行緒的測試,讓我學到了不少新知識(雖然代價也很大,漏報了一些bug),因此將這些收集起來。
1、不同資料庫之間同步資料,此時更多的要考慮資料庫間的差異,如邊界值是否一致,如某個資料庫的時間範圍是1700~2999,而另乙個資料庫的時間範圍是1775~2999,此時同步資料的時候就會出現異常。
2、資料結構之間的差異,如某個欄位在一邊資料庫中的值可以為空,而另乙個庫中的值又不能為空,此時程式要進行相應的處理,否則也會報異常
3、即使兩邊的資料結構相同,不同型別間的轉化也有可能會出錯,比如一邊是char型別的,一邊是varchar型別的,取過來的時候一般會進行trim(),將後面的空格去掉,此時如果char欄位為空的話就會報空指標異常
4、兩個程式一起操作同一張表的時候,需要測試是否會將表鎖住,這個情況要考慮周全,任何可能會操作同乙個資源的情況都要考慮到。
5、併發操作生成序列號的時候,需要測試是否會因為併發而生成重複的序列號,這個非常關鍵。
6、該使用事務的地方需要測試是否在同乙個事務中處理的,可以通過程式中故意拋異常的方式來測試事務的正確性,但是事務過長的話也會引起死鎖。
7、有時候在比較關鍵的地方列印出語句也是非常重要的,能夠發現很多程式的漏洞,但是前提是對這段程式比較了解
8、資料庫斷連後的重連測試也非常重要,要考慮資料庫伺服器斷網線、禁用網絡卡、停止資料庫甚至異常斷電的情況,重連後還需要對比資料是否正確,重連後程式的邏輯是否合理等等.....
技術積累 資料庫
1.mysql,sqlsever,oracle區別 ms sql server主要面向中小企業。其最大的優勢就是在於整合了ms公司的各類產品及資源,提供了強大的視覺化介面 高度整合的管理開發工具,在快速構建商業智慧型 bi 方面頗有建樹。ms sql server是ms公司在軟體整合方案中的重要一環...
資料庫學習積累
2018 5 11 一 檢視 1.若檢視是由兩個以上基本表匯出的,則此檢視不允許更新。2.若檢視的字段來自字段表示式或常數,則不允許對檢視執行inster和update操作,但允許delete。3.若檢視的字段來自聚集函式,則此檢視不允許更新。4.若檢視中含有group by子句,則此檢視不允許更新...
MySQL資料庫積累
主 鍵 資料庫表中對儲存資料物件予以唯一和完整標識的資料列或屬性的組合。乙個資料列只能有乙個主鍵,且主鍵的取值不能缺失,即不能為空值 null 超 鍵 在關係中能唯一標識元組的屬性集稱為關係模式的超鍵。乙個屬性可以為作為乙個超鍵,多個屬性組合在一起也可以作為乙個超鍵。超鍵包含候選鍵和主鍵。候選鍵 是...