設(shè)為首頁收藏本站Access中國

Office中國論壇/Access中國論壇

 找回密碼
 注冊

QQ登錄

只需一步,快速開始

tag 標(biāo)簽: 數(shù)據(jù)表

相關(guān)日志

分享 在數(shù)據(jù)表中添加輔助字段的構(gòu)想(一)
Superleistung 2016-5-31 11:46
剛剛學(xué)習(xí)Access不久,在建立表的過程中發(fā)現(xiàn)一個問題: 如果允許用戶通過窗體直接從數(shù)據(jù)表中刪除數(shù)據(jù),可能不安全。會出現(xiàn)一種情況——即,用戶刪除了他權(quán)限上允許他刪,而事實上卻很重要的數(shù)據(jù)(出于誤刪,或是根本就是惡意刪除)。 這時候就需要 找回 數(shù)據(jù),應(yīng)該做恢復(fù)數(shù)據(jù)及回滾覆蓋操作。這就有個如何安全恢復(fù)的問題。 假設(shè):恰好數(shù)據(jù)被刪除掉之后沒有 被 立刻發(fā)現(xiàn),很多員工又繼續(xù)用了相當(dāng)長一段時間,產(chǎn)生了大量數(shù)據(jù);而之前的數(shù)據(jù)庫備份又比較久遠(yuǎn),這就比較麻煩, 以我現(xiàn)在的水平從Access底層是解決不了的。 受權(quán)限表的設(shè)計原理啟發(fā),我想到可以在數(shù)據(jù)表中添加輔助字段,形如"WantDelete" (是否刪除字段) ,"WantHide" (是否隱藏顯示字段) , "IfActive" ( 是否活動字段 ), "LastEdit" (上次編輯記錄的ID字段), "DeleteTime" (記錄編輯時間字段), "EditTime" (記錄編輯時間字段) 來控制用戶端的操作: 我的構(gòu)想是: 1.新增:用戶的新增操作像以前一樣可以進(jìn)行,新加的 "WantDelete" ,"WantHide"字段默認(rèn)為否, "IfActive"默認(rèn)為真, "LastEdit" , "DeleteTime" 字段為空 , "EditTime"字段為新增時間。 2.刪除:用戶的任何刪除操作都不是對表中數(shù)據(jù)做任何實際操作的,而是對 "WantDelete" "WantHide" "IfActive" 打鉤,程序?qū)? "WantDelete" "WantHide" 已打鉤項目進(jìn)行隱藏操作;在查詢的時候?qū)? "IfActive"進(jìn)行判斷,對不活動的記錄不進(jìn)行操作;同時將刪除操作的時間記入 "DeleteTime" 字段。 3.編輯:編輯操作轉(zhuǎn)變?yōu)? -對原紀(jì)錄做Copy新增 -在Copy記錄中的 "LastEdit"中寫入原記錄的ID -在Copy記錄中 "EditTime" 記下當(dāng)前 時間 -將Copy記錄的 "WantDelete" ,"WantHide"字段設(shè)置為否, "IfActive"設(shè)置為真 , "DeleteTime" 字段設(shè)為空 -在原記錄中,設(shè)置僅將 "WantHide"值為真, "IfActive"設(shè)置為否 , "DeleteTime" 字段記錄 記下當(dāng)前 時間(不設(shè)置 "WantDelete"為真是為了方便管理員區(qū)分編輯和刪除操作 ) -刷新顯示的時候,實際上是做的數(shù)據(jù)篩選,將 "IfActive"設(shè)置為否的記錄隱藏掉。 4.查詢:設(shè)計查詢的時候,把 "IfActive"為否的記錄篩掉不做操作,這樣就可以做到類似顯示真實刪除掉記錄后的效果。 可以方便的在管理員界面進(jìn)行管理,提取數(shù)據(jù)生成日志報表,并對真的需要刪掉的記錄由管理員進(jìn)行最終的備份+刪除操作。 關(guān)于數(shù)據(jù)恢復(fù)的操作: 恢復(fù)數(shù)據(jù)操作的主體應(yīng)該是管理員,由管理員對隱藏掉的數(shù)據(jù)進(jìn)行回溯查詢,找到數(shù)據(jù)記錄正確的數(shù)據(jù)條,修改其相應(yīng)的 "WantDelete" ,"WantHide" , "IfActive" , "LastEdit" , "DeleteTime" , "EditTime"字段的值即可。 后記: 后來想了一下,這個設(shè)計應(yīng)該能做的更好:其實應(yīng)該將記錄添加人,刪除人,編輯操作人作為單獨的字段獨立出來,記錄下做操作的員工ID 對后續(xù)的管理會更有幫助。 先把這個實現(xiàn)以后調(diào)試一段時間看看效果, 感覺這里面應(yīng)該還可以深入,放在以后講。
個人分類: 數(shù)據(jù)庫結(jié)構(gòu)|2469 次閱讀|0 個評論

QQ|站長郵箱|小黑屋|手機(jī)版|Office中國/Access中國 ( 粵ICP備10043721號-1 )  

GMT+8, 2025-7-17 04:47 , Processed in 0.064953 second(s), 15 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

返回頂部