列名:
FileName DocTypeID?????BatchNum?JobNum? PageNum?? JobState
文件名??????文件的類型??????批次號?????Job號????? 頁數(shù)?????????? 文件的狀態(tài)值
?
?????? 具體的邏輯是:文件分不同的
DocTypeID即文件的類型 如果對文件進(jìn)行處理比如說 銀行等部門對單據(jù)先要進(jìn)行掃描然后錄入 校對等處理,那么就要分為不同的批次即不同的
BatchNum?在這
BatchNum?還可能有多個(gè)
JobNum? 而在每個(gè)
JobNum?里存放著文件,有時(shí)文件分多頁 也就是
PageNum????而進(jìn)行到最后是將這些單據(jù)存到數(shù)據(jù)庫中,只能一頁一頁的存,問題就出現(xiàn)了 在我們進(jìn)行掃描 錄入 校對 入庫時(shí)
JobState隨之改變??當(dāng)入庫過程中,網(wǎng)絡(luò)發(fā)生中斷時(shí), 一個(gè)
JobNum?里的
PageNum的JobState就不相同了我們把已入庫的設(shè)置為“6“未入庫的設(shè)置為“2”? ?要進(jìn)行事務(wù)回滾必須要找到出現(xiàn)異常的文件?? 在這里就要用的關(guān)鍵字“IN”SQL語句如下:
select DocTypeID,BatchNum,JobNum from JobQueue where JobState='2' and BatchNum in(select BatchNum from JobQueue where JobState='6' ) group by DocTypeID,BatchNum,JobNum"
? IN的作用就是將兩條select語句的結(jié)果取并集 這樣 一個(gè)
JobNum?里如果既有"2"又有''6''就可以查出來
posted on 2006-09-16 21:05
Crespo 閱讀(3198)
評論(0) 編輯 收藏 所屬分類:
數(shù)據(jù)庫