ClientDataSet 的ApplyUpdate問題 |
缺席
|
ivankuo
中階會員 發表:132 回覆:272 積分:95 註冊:2002-11-21 發送簡訊給我 |
|
ivankuo
中階會員 發表:132 回覆:272 積分:95 註冊:2002-11-21 發送簡訊給我 |
|
ivankuo
中階會員 發表:132 回覆:272 積分:95 註冊:2002-11-21 發送簡訊給我 |
|
pcplayer99
尊榮會員 發表:146 回覆:790 積分:632 註冊:2003-01-21 發送簡訊給我 |
|
ivankuo
中階會員 發表:132 回覆:272 積分:95 註冊:2002-11-21 發送簡訊給我 |
|
Justmade
版主 發表:94 回覆:1934 積分:2030 註冊:2003-03-12 發送簡訊給我 |
應該是你有 Date 或 Float 的 Field 罷
DBEXPRESS 有一個大 Bug 就是 update 時自動做的 where datefield=value 及 where floatfield=value 的 value 與 select 回來的值會有極少的偏差,以至找不回原先的 record 暫時的解法方法是在 TSQLDataSet / TSQLQuery / TSQLTable Add 上 Field 並將 date field / float field 的 ProviderFlags.pfInWhere 設成 false ,這樣dbexpress 便不會為這個 Field 產生 where clause 也就跳過這個 BUG 你若有 Unique Key 也可在 DataSetProvider 將 UpdateMode 改成 upWhereKeyOnly 並在 TSQLDataSet / TSQLQuery / TSQLTable Add 上 Field 並將 Key Field 的 ProviderFlags.pfInKey 設 True DBEXPRESS 的 update 正在一些一些的放在 Borland 的 Code Central, 可自行留意一下,正式的 update 應不會這麼快。
http://codecentral.borland.com/codecentral/ccweb.exe/home -> Database - Delphi
留意 Ramesh Theivendran 出的東東,他現在是唯一維護 DBExpress 的 Borland 員工。
|
ivankuo
中階會員 發表:132 回覆:272 積分:95 註冊:2002-11-21 發送簡訊給我 |
等了好久終於有人在回應,真是高興,感謝版主。 不過小弟有幾個問題請教:
1.您所指的(Date 或 Float 的 Field ),這不就全部field欄位都是??
2.小弟不是很了解前輩所指的(Date 或 Float 的 Field )意義,所以把所有欄位的ProviderFlags.pfInWhere 設成 false ,把Key Field 的ProviderFlags.pfInKey 設 True,結果還是會出現錯誤訊息Unable to find record,No key specified。 不曉得我有沒有會錯意。
------
ivankuo |
Justmade
版主 發表:94 回覆:1934 積分:2030 註冊:2003-03-12 發送簡訊給我 |
1. Date 是日期 Float 是浮點數甚會是所有?? String / integer 等其他 Field 沒這個問題。 2. 我上文已說過,要使用 ProviderFlags.pfInKey 要同時在 DataSetProvider 將 UpdateMode 改成 upWhereKeyOnly 否則他會看你 ProviderFlags.pfInWhere 的值,而由於你所有 Feild 都是 False, 即是沒 where, 那甚能找到在 update 那個 record 呢 ?
|
ivankuo
中階會員 發表:132 回覆:272 積分:95 註冊:2002-11-21 發送簡訊給我 |
|
Justmade
版主 發表:94 回覆:1934 積分:2030 註冊:2003-03-12 發送簡訊給我 |
|
ivankuo
中階會員 發表:132 回覆:272 積分:95 註冊:2002-11-21 發送簡訊給我 |
|
kensoong
初階會員 發表:31 回覆:70 積分:45 註冊:2003-05-28 發送簡訊給我 |
|
ivankuo
中階會員 發表:132 回覆:272 積分:95 註冊:2002-11-21 發送簡訊給我 |
|
kensoong
初階會員 發表:31 回覆:70 積分:45 註冊:2003-05-28 發送簡訊給我 |
|
ivankuo
中階會員 發表:132 回覆:272 積分:95 註冊:2002-11-21 發送簡訊給我 |
|
kensoong
初階會員 發表:31 回覆:70 積分:45 註冊:2003-05-28 發送簡訊給我 |
|
ivankuo
中階會員 發表:132 回覆:272 積分:95 註冊:2002-11-21 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |