全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1265
推到 Plurk!
推到 Facebook!

commandtext的錯誤

答題得分者是:Chance36
sundy6719
初階會員


發表:136
回覆:78
積分:42
註冊:2002-07-10

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-04-22 01:19:19 IP:203.70.xxx.xxx 未訂閱
請教一個問題就是我制作了一個分散式多層應用系統可是我的程式碼如下 datamodule2.ClientDataSet1.Close; datamodule2.ClientDataSet1.CommandText:='select * from 員工'; datamodule2.ClientDataSet1.open; 可是我在主機的那端有設定 datasetprovider元件的options的psallowcommandtext為true可是都會出現錯誤為adoquery1:cannot perform this operation on an open dataset這行錯誤訊息可是我只要不使用datamodule2.ClientDataSet1.CommandText:='select * from 員工';則可正常運作請問各位前輩我的錯誤出在那呢謝謝~~
Chance36
版主


發表:31
回覆:1033
積分:792
註冊:2002-12-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-04-22 01:29:50 IP:203.204.xxx.xxx 未訂閱
sundy6719 你好 依此情況來看,應該是你有兩個ClientDataset的Provider都指向同一個,當第一個ClientDataSet.Open後,第二個ClientDataSet.Open時就會有此現象,相反的第二個ClientDatasdet先Open後再開啟第一個ClientDataSet也一樣。最好是一個ClientDataSet對應一個DataSetProvider,這樣比較能發揮效率,但相對的記憶體吃的也比較兇(Server端),不過我覺得還好啦。
sundy6719
初階會員


發表:136
回覆:78
積分:42
註冊:2002-07-10

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-04-22 02:12:31 IP:203.70.xxx.xxx 未訂閱
Chance36前輩感謝您的回覆可是我只有一個clientdataset元件問題還是存在... 我要從那裡檢查起呢...謝謝您^__^
Chance36
版主


發表:31
回覆:1033
積分:792
註冊:2002-12-31

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-04-22 02:20:44 IP:203.204.xxx.xxx 未訂閱
sundy6719 你好 我也是以前曾發生同樣的狀況,但發生的原因就象我所說的一般,至於你的Client端只有一個ClientDataSet對應到Server端的DataSetProvider,這很平常呀!那麼DataSetProvider所連結的AdoQuery在設計時期是開啟的嗎? 發表人 - chance36 於 2004/04/22 02:22:38
sundy6719
初階會員


發表:136
回覆:78
積分:42
註冊:2002-07-10

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-04-22 02:24:48 IP:203.70.xxx.xxx 未訂閱
Chance36 大大我找出答案了原來我更改過datasetprovider元件的options的psallowcommandtext為true我沒有在執行過一次在存檔就直接存檔現在執行過再存檔後就可以正常了真的非常感謝您~~^__^
系統時間:2024-05-04 7:13:15
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!