D:=new selobj();
insert into D insertfields(["a"],["b"],["c"],["d"]) values('delete',2,3,4);
insert into D rand(3,array('a','b','c'));
delete from D where ["a"] = 'delete';
return D.data(); // return D.FData;
type selobj=class
//******数组变量和下标变量********
FData;
FIndex;
//******数据处理方法**************
Public
function TSQLBatchInsert(V);
begin
FData&=V;
return true;
end;
function create();
begin
FData:=array();
FIndex:=-1;
end;
Function TSQLDataFirst(Var Cursor:Integer):Boolean;
begin
Cursor:=0;
FIndex:=0;
return length(FData)<>0;
end;
Function TSQLDataNext(Var Cursor:Integer):Boolean;
begin
Cursor:=++FIndex;
return FIndex<length(FData);
end;
Function TSQLEvalValue(Key;Var Value):Boolean;
begin
ret:=(FIndex>=0) and (FIndex<Length(FData));
if ret then Value:=FData[FIndex][Key];
return ret;
end;
Function TSQLSetValue(Key,Value):Boolean;
begin
FData[FIndex][Key]:=Value;
return true;
end;
Function TSQLSetCursor(Cursor:Integer):Boolean;
begin
FIndex:=Cursor;
return true;
end;
Function TSQLDelete(Var Cursor:Integer):Boolean;
begin
DeleteIndex(FData,FIndex);
Cursor:=FIndex;
return true;
end;
Function TSQLInsert():Boolean;
begin
FIndex:=length(FData);
return true;
end;
function data();
begin
return fdata;
end;
End;