回答你的第二个问题:
1、在插入事件中:
(1)读取DBGridEh最后一行的Date值
(2)将该值+1
(3)对于直接连接硬盘文件的:在DBGridEh中,直接加入一行数据。
sDate:=FieldByName('日期').asString;
DateTimetoString(sDate,'yyyy-mm-dd',StrToDate(sData)+1);
with DBGruideEh1.Datasource.DataSet do
begin
Append;
FieldByName('日期').asString:=sDate;
FieldByName('ID').asString:=ID;
Post;
end;
Field
(4)对于三层,首先SQL插入语句中,将该值加入,再在DBGridEh中,加入一行数据。
sDate:=FieldByName('日期').asString;
DateTimetoString(sDate,'yyyy-mm-dd',StrToDate(sData)+1);
SQL:='INSERT INTO 活动记录 (日期,ID) VALUES('+
#39+sDate+#39+','+
#39+ID+#39+')';
if DataModule1.SocketConnection1.AppServer.MyQuery(SQL,err) then
begin
with DataModule1.ClientDataSet1 do
begin
Append;
FieldByName('日期').asString:=sDate;
FieldByName('ID').asString:=ID;
Post;
end;
end;