使用update函式儲存資料之前,通常要判斷資料視窗中是否有主鍵重複的資料,如果有重複則不允許提交。如果我們不編寫程式判斷,資料視窗本身業可以進行校驗,但是顯示的都是英文的提示資訊。為此,我們通常在dberror事件中返回1以遮蔽該英文的提示資訊,然後編寫程式進行主鍵重複判斷。
進行主鍵重複判斷,實現的方法很多,效率高的不多。這裡介紹的是效率非常高的一種方法。該方法的思路是,通過過濾,將只顯示過一次的資料慮除,如果過濾之後資料視窗中還有資料,則說明有重複資料。程式如下:
string ls_fieldname
long ll_rc
ls_fieldname = "dept_id"
ll_rc = dw_1.rowcount()
dw_1.setfilter("")
dw_1.filter()
dw_1.setsort(ls_fieldname + " a")
dw_1.sort()
dw_1.setfilter(ls_fieldname + " <> " + ls_fieldname + "[-1] or getrow() =1")
dw_1.filter()
if dw_1.rowcount() < ll_rc then
messagebox("注意",ls_fieldname + "列中存在重複的資料!",stopsign!)
end if
PB判斷是否有重複資料
使用update函式儲存資料之前,通常要判斷資料視窗中是否有主鍵重複的資料,如果有重複則不允許提交。如果我們不編寫程式判斷,資料視窗本身業可以進行校驗,但是顯示的都是英文的提示資訊。為此,我們通常在dberror事件中返回1以遮蔽該英文的提示資訊,然後編寫程式進行主鍵重複判斷。進行主鍵重複判斷,實現...
判斷資料中是否有重複數字
題目要求 在長度為 n 的陣列中,存放的是0 n 1的數字,判斷該陣列中是否還有重複的數字。分析 比如陣列為 1,5,7,4,3,2,5,0 判斷下標值,與該位置的值是否相等,arr i 是否等於 i 遍歷陣列,第一位arr 0 1.則把arr 0 的值與arr 1 的值做調換。此時下標為1的位置對...
判斷List中是否有重複的元素。
list的初始值 uid都為1,accountdata2單獨設定了nickname aaa listaccountdatalist new arraylist accountdata accountdata new accountdata accountdata accountdata2 new a...