Dbexpress 的SQLQuery 存取發生 ReadOnly 問題 |
尚未結案
|
stillalive
初階會員 發表:7 回覆:148 積分:41 註冊:2004-04-07 發送簡訊給我 |
在下用元件SQLconnect-> SQLQuery(Dbexpress)-> Provider->ClientDataSet
->DataSource(Data Access)->DBGrid(Data Control)
連結 MSSQL Server . 當下達 ClientDataSet.ApplyUpdates(-1) 時 ,
出現SQLQuery 存取發生 ReadOnly 問題 . 請教各位先進該如何解決 ? PS . SQLQuery 的 GetMetaData 已設定為 True .
|
yachanga
資深會員 發表:24 回覆:335 積分:296 註冊:2003-09-27 發送簡訊給我 |
Hi您好
一般來說
撈取一個TABLE, update varchar欄位的值應該OK.. 可否先檢查
1.SQL是否有join兩個以上的table??
2.是否有特殊欄位型態, 如BLOB??? 可參考之前討論
http://delphi.ktop.com.tw/topic.php?topic_id=36200
引言: 在下用元件SQLconnect-> SQLQuery(Dbexpress)-> Provider->ClientDataSet ->DataSource(Data Access)->DBGrid(Data Control) 連結 MSSQL Server . 當下達 ClientDataSet.ApplyUpdates(-1) 時 , 出現SQLQuery 存取發生 ReadOnly 問題 . 請教各位先進該如何解決 ? PS . SQLQuery 的 GetMetaData 已設定為 True .~悠遊法國號~ |
stillalive
初階會員 發表:7 回覆:148 積分:41 註冊:2004-04-07 發送簡訊給我 |
|
Chance36
版主 發表:31 回覆:1033 積分:792 註冊:2002-12-31 發送簡訊給我 |
|
stillalive
初階會員 發表:7 回覆:148 積分:41 註冊:2004-04-07 發送簡訊給我 |
|
ccchen
版主 發表:61 回覆:940 積分:1394 註冊:2002-04-15 發送簡訊給我 |
引言: 我現在改用ADO元件 , 這問題很奇怪就消失 . 應該是dbExpress自己的bug .這可不是bug, 看看online help吧, TSQLQuery本來就是readonly的元件,不只Readonly, 還是單向(只能next不能prior) 要更新資料必須透過額外執行之update sql 以你的情況來說實際負責更新資料的應該是TDataSetProvider而不是TSQLQueruy. 檢查一下provider之ResolveToDataSet是否為True, 改成false,讓Provider幫你update就可以了 |
stillalive
初階會員 發表:7 回覆:148 積分:41 註冊:2004-04-07 發送簡訊給我 |
|
seaturn99
版主 發表:69 回覆:427 積分:214 註冊:2003-08-25 發送簡訊給我 |
引言: ccchen 大大你好 在下目標是 3-tier 架構 , DataProvider 應在 AppServer 端 , 我看過李維大師討論 DataProvider Update 章節 , 內容實在過於煩瑣 , 而且如何將Client端產生SQL指令丟到APPSERVER DataProvider 執行 ? PS 李維大師用SQL語法更新資料庫 , 不用 ApplyUpdates . 發表人 - stillalive 於 2004/04/13 02:06:52stillalive 您好 : 如果要發展 3-Tier 那應該利用 DataSnap 技術會蠻方便的... 如果用 dbExpress 的元件嫌麻煩的話,可以使用 TSimpleDataSet.. 要規劃設計 Multi-Tier 需要考慮許多層面,麻煩是避免不了的... ---- 我只會兩件事,這也不會,那也不會 眼見不一定為真 ---- |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |