Office中国论坛/Access中国论坛

标题: 記錄沖突問題,當通過查詢程直接修改數據后,再用access自帶的存儲命令就會發生記錄沖 [打印本页]

作者: ADAM    时间: 2006-1-27 15:59
标题: 記錄沖突問題,當通過查詢程直接修改數據后,再用access自帶的存儲命令就會發生記錄沖
記錄沖突問題,當通過存儲過程直接修改數據后,再用access自帶的存儲命令就會發生記錄沖突

狀態:

一表單中,有兩個命令按鈕,及其它文本框,主索引是'父編號'文本框,表單結合記錄是 'tabBomitem':

1. 修改

    CLICK代碼:

   ME.ALLOWEDITS=TRUE

2.存檔

   CLICK代碼:

      CurrentProject.Connection.Execute ("UPDATE tabBomitem SET 修改日期=GETDATE(),修改用戶='AAA',CURRENTUSERID=NULL FROM tabBomItem WHERE PARENTID='" & Me.父編號 & "'")
    DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
   ME.ALLOWEDITS=FALSE

問題狀況:

1.當按下'修改'鈕后,立即保存,就會出再'記錄沖突' 的提示.



想法:

1.不用查詢修改底層資料,可解決這個問題,但因為在多用戶情況下,必須用此取得服務器的時間來作為修改時間.

2.是否可以使用查詢后,用什么方法此沖突不現發生???

實在是想破了頭....
作者: wuaza    时间: 2006-1-27 17:56
不用查询的话可以建一个触发器,当update时给“修改日期”字段赋值getdate()。如果在mdb中,就在窗体的更新后事件中写入赋值代码。

[此贴子已经被作者于2006-1-27 10:01:38编辑过]


作者: ADAM    时间: 2006-1-27 18:54
有想過使用觸發器的.但當我修改后不保存的時候,這個觸發器也會引發.那樣"修改日期"就不對了.

主要是因為這個原因.
作者: 一点通    时间: 2006-1-27 19:42
简化例子传上来看下




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3