我使用C++ Builder的6.0試圖修改只讀數據集字段
我用TADODataSet執行下面的SQL語句:
SELECT Id, SUM(Saldo) AS Saldo
FROM Table
GROUP BY Id
我用這個數據集只用於報告。不需要更新數據庫。 當我嘗試修改現場「Saldo」
adospCard->Edit();
adospCard->FieldByName("Saldo")->AsFloat=0.0;
adospCard->Post();
我得到錯誤: 場「Saldo」不能修改。 我加入這一行
adospCard->FieldByName("Saldo")->ReadOnly=false;
和錯誤沒有更多的發生,但場「Saldo」並沒有改變。
adospCard->Edit();
//adospCard->FieldByName("Saldo")->AsFloat=1536.5
adospCard->FieldByName("Saldo")->AsFloat=0.0;
//adospCard->FieldByName("Saldo")->AsFloat=0
adospCard->Post();
//adospCard->FieldByName("Saldo")->AsFloat=1536.5
Howe要改變'Saldo'字段值嗎?
你爲什麼要改變它?它實際上只是一個由db計算出的值,而不是「真正的」字段。 – 2011-01-24 12:15:09
我知道'saldo'不是真正的字段,但是當Id爲...時,客戶端需要在某些報告中更改此值。 – SelvirK 2011-01-24 12:26:25