有关操作ClientDataSet的问题,请大家帮忙;
请教大家一个问题: 我有一个功能,使用一个ClientDataSet获取了一个外部一个DataSet的Data之后,外部的DataSet关闭了,我现在需要去针对这个ClientDataSet进行一个操作,操作步骤是:先通过主键字段去查找对应的记录是否存在,如果存在则先删除对应的记录,然后在这个ClientDataSet的开头插入记录;(插入的记录总是在第一条)
比如现在的记录如下:
插入之前的数据情况:
CODE NAME
001 张三
005 王五
002 李四
我现在操作一条记录: 003 王五
需要达到的插入之后的效果:
CODE NAME
005 王五
001 张三
002 李四
我现在的处理方式时:
if (AClientDataSet.Locate(KeyFieldName,KeyFieldValue,[]) then
AClientDataSet.Delete;
AClientDataSet.First;
AClientDataSet.Insert;
.....对AClientDataSet的字段进行赋值
AClientDataSet.Post;
但是实际的效果却是:
CODE NAME
001 张三
005 王五
002 李四