sqlquery:cannot modify a read-only dataset的錯誤 |
答題得分者是:Mickey
|
nokia2005
一般會員 發表:27 回覆:18 積分:9 註冊:2006-12-26 發送簡訊給我 |
各位好我是使用程式碼去CREATE元件去做有關DBEXPRESS去做動態連結INTERBASE
而我在做clientdataet.post都能正常執行但就是在做clientdataset.applyupdate(0);都會出現 project projectmanager.exe raised exception class EDatabaseError with message 'sqlquery:cannot modify a read-only dataset'. ....... 而我去做sqlquery的modify判斷時也是唯讀的 想請教怎麼把sqlquery變成可去更新呢 我去找了很多資料都是有關ADO的元件寫法但我改來改去還是不行是否有前輩願指點一下感激不盡~ |
baby2321
初階會員 發表:52 回覆:165 積分:48 註冊:2005-06-11 發送簡訊給我 |
|
nokia2005
一般會員 發表:27 回覆:18 積分:9 註冊:2006-12-26 發送簡訊給我 |
|
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
|
nokia2005
一般會員 發表:27 回覆:18 積分:9 註冊:2006-12-26 發送簡訊給我 |
版主您好我的程式碼是
with ConnGlb do begin DriverName:='interbase'; ConnectionName:='GLBDATA'; GetDriverFunc := 'getSQLDriverINTERBASE'; LibraryName := 'dbexpint.dll'; VendorLib := 'gds32.dll'; LoginPrompt:=false; KeepConnection:=true; LoadParamsFromIniFile('dbxconnections.ini'); end; with sqlQuery do begin SQL.Text:='select * from customer'; Name:='sqlQuery'; SQLConnection:=ConnGlb; end; with dsp do begin dataset:=sqlQuery; Name:='dsp'; dsp.UpdateMode:=upWhereAll; ResolveToDataSet:=true; <==這改過FALSE和TRUE都一樣 Options:=[poAllowCommandText]; <==這一行也拿掉過也一樣 end; with cds do begin ProviderName:='dsp'; Name:='cds'; PacketRecords:=-1; end; DataSource1.DataSet:=cds; cds.open; 儲存的部份 sqlquery.Active:=true; cds.open; if cds.ChangeCount>0 then cds.ApplyUpdates(-1); <====我使用單部執行錯誤在這裡而以上在執行上都沒有問題 大約是這樣~ 我是使用 interbase firebird delphi7 感謝~~ ===================引 用 Mickey 文 章=================== 你好: 方便把 SQLQuery.SQL....內容 Po 上嗎 ? |
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
|
nokia2005
一般會員 發表:27 回覆:18 積分:9 註冊:2006-12-26 發送簡訊給我 |
感謝版主您的回覆~
我依您的建議~ customer table 是否有特殊的欄位? <====沒有特殊欄位 DatasetProvider.ResolveToDataSet:=False; <====改成FALSE也是有錯誤 DatasetProvider.UpdateMode:=upWhereKeyOnly; <====改成upWhereKeyOnly也是有錯誤 而 SQLQuery 的各 Field..要設定 ProviderFlags.(至少 Key 欄位要正確設定). <==我沒有設定虛擬欄位~而且元件全是用CREATE建立而成 |
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
|
nokia2005
一般會員 發表:27 回覆:18 積分:9 註冊:2006-12-26 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |