table1.append;
table1.fieldbyname('name').asstring:=query1.fieldbyname('name').asstring;
table1.fieldbyname('id').asinteger:=query1.fieldbyname('id').asinteger;
table1.fieldbyname('age').asinteger:=age;
table1.post;
table1.fieldbyname('name').asstring:=query1.fieldbyname('name').asstring;
table1.fieldbyname('id').asinteger:=query1.fieldbyname('id').asinteger;
table1.fieldbyname('age').asinteger:=age;
table1.post;
on a close dataset.本来query1是可以真确执行的。
先查询得到:学号:=query1.fieldbyname('id').asinteger;
年龄:=query1.fieldbyname('name').asstring;
query1.close;
query1.sql.text:='insert into student values(:v1,:v2,:v3)';
query1.parambyname('v1').asinteger:=学号;
query1.parambyname('v2').asstring:=姓名;
query1.parambyname('v3').asstring:=年龄;
query1.execSQL;
dbgrid1.refresh;差不多了
那就用query1,不用table,
先查询得到:学号:=query1.fieldbyname('id').asinteger;
姓名:=query1.fieldbyname('name').asstring;
query1.close;
query1.sql.text:='insert into student values(:v1,:v2,:v3)';
query1.parambyname('v1').asinteger:=学号;
query1.parambyname('v2').asstring:=姓名;
query1.parambyname('v3').asstring:=变量(age)
query1.execSQL;
dbgrid1.refresh;差不多了