XE 使用 BDX 更新資料會卡彈,可是2010不會 |
缺席
|
shininggod
一般會員 發表:16 回覆:20 積分:17 註冊:2009-05-13 發送簡訊給我 |
現在是2010跟XE兩個都灌起來了
用SQLquery DatasetProvider ClientDataSet DataSource 程式碼不變 2010跑的時候沒有問題 XE跑的時候,在更新資料的時候 ClientDataSet.Post; ClientDataSet .ApplyUpdate(0);會出現 "不允許進行新交易,因為有其他執行緒正在工作階段中執行。" 然後就不會更新. 我用SQL profiler 啥都trace不到.... 基本上不太可能土法煉鋼重新一個一個試Orz 所以是想請教2010 vs XE DBX 有沒有不一樣的地方要改.... 感謝樓下回答 MARS已經有再用了, 當初搞半天才知道要用"Mars_Connection=True", 奇怪一大堆 語法誰搞出來的, 還有 =yes .... 我後來有發現是我有呼叫 ClientDataSet.RefreshRecord; 多了這個所以爆....不過是在.edit之前呼叫的Orz.. 問題另開一個主題好了,我在想一個好標題Orz.. 編輯記錄
shininggod 重新編輯於 2011-04-29 04:22:39, 註解 無‧
shininggod 重新編輯於 2011-05-03 00:47:45, 註解 無‧ shininggod 重新編輯於 2011-05-03 00:49:17, 註解 無‧ |
GrandRURU
站務副站長 發表:240 回覆:1680 積分:1874 註冊:2005-06-21 發送簡訊給我 |
主要原因:
異動表本身的TIGGER / StoredProcedure被觸發了導致更新前後資料不一的情形 DBX的設定我並不清楚 不過你也許可以從以下的連結得到解答 http://social.technet.microsoft.com/Forums/en-US/sqldriverforphp/thread/3818563c-edd4-4d08-9c3d-61264808d806 http://blogs.msdn.com/b/cbiyikoglu/archive/2006/11/21/mars-transactions-and-sql-error-3997-3988-or-3983.aspx ===================引 用 shininggod 文 章=================== 現在是2010跟XE兩個都灌起來了 用SQLquery DatasetProvider ClientDataSet DataSource 程式碼不變 2010跑的時候沒有問題 XE跑的時候,在更新資料的時候 ClientDataSet.Post; ClientDataSet .ApplyUpdate(0);會出現 "不允許進行新交易,因為有其他執行緒正在工作階段中執行。" 然後就不會更新. 我用SQLprofiler 啥都trace不到.... 基本上不太可能土法煉鋼重新一個一個試Orz 所以是想請教2010 vs XE DBX 有沒有不一樣的地方要改.... |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |