首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

数据提交有关问题

2012-03-28 
数据提交问题我用adotable1.append添加数据,不用adotable1.post好象数据就保存了。Append是否自带了post

数据提交问题
我用adotable1.append;添加数据,不用adotable1.post;好象数据就保存了。Append是否自带了post啊?还是怎么回事?

[解决办法]
adotable1.append; 之后没有POST

跟着再adotable1.append;是会自动POST之后在增加的!
[解决办法]
Append;调用的是

procedure TDataSet.Append;
var
Buffer: PChar;
begin
BeginInsertAppend;
....

Append之前会调用BeginInsertAppend;

procedure TDataSet.BeginInsertAppend;
begin
CheckBrowseMode;

而BeginInsertAppend又调用了CheckBrowseMode;

procedure TDataSet.CheckBrowseMode;
begin
CheckActive;
DataEvent(deCheckBrowseMode, 0);
case State of
dsEdit, dsInsert:
begin
UpdateRecord;
if Modified then Post else Cancel;
end;
dsSetKey:
Post;
end;
end;

CheckBrowseMode看的出来,如果正处在插入或修改状态会调用

if Modified then Post else Cancel;

如果你已经做了修改了就会提交,否则就取消;

做完这些之后才会去调用Append;

要说明一点,没办法让一条以上的记录处在dsEdit或dsInsert状态!

热点排行