那就用计算字段吧,不过VC我没用过,只用过BCB OR DELPHI: Variant v1 = table1->FieldValues["jie"]; //Count是全局变量 if (table1->Bof) Count = 0; Variant v2 = table1->FieldValues["dai"]; int jie ,dai; if (v1.IsNull()) jie = 0; else jie = (int)v1; if (v2.IsNull()) dai = 0; else dai = (int)v2; Count += jie - dai; table1->FieldValues["yuer"] = Count; ...
例如:SELECT (SUM(借方)-SUM(贷方))AS BALANCE FORM MYTABLE
会出错的!我试了好象不能通过的。何况如果用
SELECT SUM(借方)AS XXX FROM TABLE
返回的只有1条记录,根本无法实现下列的情况。
借方 贷方 余额
----------------------------
80 80
34 46
12 58
13 71
21 50每一条记录都要有余额的。
而且余额是累积的!某些记录的借方或贷方为NULL啊!
Variant v1 = table1->FieldValues["jie"];
//Count是全局变量
if (table1->Bof)
Count = 0;
Variant v2 = table1->FieldValues["dai"];
int jie ,dai;
if (v1.IsNull())
jie = 0; else jie = (int)v1;
if (v2.IsNull())
dai = 0; else dai = (int)v2;
Count += jie - dai;
table1->FieldValues["yuer"] = Count;
...