將所有待檢查的CODE存到臨時表中,然後通過SQL選擇出所有不存在的CODE。
優點:(沒體會)。
缺點:往臨時表中插數據也會消耗掉很多性能,不能將不合法的數據登錄到臨時表,以防發生異常。加重數據庫服務器的負荷。
方法2 不使用臨時表
1. 循環待檢查的CODE,緩存到Hashtable(Key是CODE;文件導入的場合,Value是行數,反之爲空)中,並組成查詢用的IN字符串。
2. 執行查詢,取得所有存在的CODE。
3. 如果存在的CODE數和待檢查的CODE數一致,說明所有CODE都存在。否則繼續篩選不存在的CODE。
4. 循環存在的CODE,如果CODE在Hashtable中也存在,就將該CODE從Hashtable中刪除,反之保留。
5. 凡是Hashtable中未被刪除的CODE,就是DB中不存在的CODE了。
優點:利用了應用服務器,減輕數據庫服務器的負荷。
缺點:(體會中)。