 |
VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
|
上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
wagerlan
註冊時間: 2007-04-10 文章: 3
第 1 樓
|
發表於: 星期二 四月 10, 2007 2:44 pm 文章主題: 关于VFP9(SP1)的CA之RecordRefresh()用法的疑问 |
|
|
请教各位大大,为何同一Table同一笔Data两个不同的CA编辑时,一个已Update Post入SQL Server,而另一个CA用RecordRefresh(1)在此记录上居然取不回Updated后的资料,而用CursorRefresh()则可以完全没有问题,可保持资料一致.
通过SQL Profiler查看SQL语句,也是没有问题的,先有中一个CA进行Update,然后再有另一个CA的Select命令,非常奇怪?
另外,针对同一Table同一Data两个User以上同时修改的情况,在VFP9(SP1)+SQL Server2000这样的C/S环境下各位有什么好的建议,如何锁定?在不作中间层的情况下如何非常好的控制 ?
非常感谢各位前辈!!! |
|
回頂端 |
|
 |
wagerlan
註冊時間: 2007-04-10 文章: 3
第 2 樓
|
發表於: 星期三 四月 11, 2007 9:57 am 文章主題: |
|
|
可能我没有说清楚,是这样的,用RecordRefresh刷一个已经更改(包括直接SQL Update)的Table的最新记录数据,并不会更改当前Cursor的数据,但是非常奇怪的事情是,经过RecordRefresh刷过之后,在SQL WhereType如果有包括Modifed的Column,Update时却并不会报错,也就是说经过RecordRefresh取得的Ado的Dataset是最新的数据,但是Cursor却并没有更新,后上MSDN查过函数的相关备注,有以下提示
The tables or cursors must be opened exclusively.
The refresh operation is not supported buffered inserts, which are simply ignored, and no error is generated. If a target record has buffered table or record changes, those changes are preserved, and the current field values are refreshed.
各位大大能帮忙看看是什么意思吗?与我这个问题相关吗?
谢谢! |
|
回頂端 |
|
 |
Abel
註冊時間: 2005-03-14 文章: 189 來自: 鹿港小鎮
第 3 樓
|
發表於: 星期五 四月 13, 2007 1:03 pm 文章主題: |
|
|
我的 ca 是利用 Data Envirenment 的 Builder 建立的
in the form 我使用如下,便可立即刷新資料
Thisform.DataEnvironment.ca_XXX.CursorRefresh()
ca_XXX 為您的 ca name |
|
回頂端 |
|
 |
|
|
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
|
|