{
 将数据集操作方面的东西全部封装成一个单独的类
 TcustomAdoDataSet是TadoQuery、TadoTable、TadoDataSet、TadoCommand的公共祖先类
 应尽量使用TadoDataSet和TadoCommand类
}
Delphi ADO数据操作封装类unit untOpeDataSet;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类interface
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类uses
Delphi ADO数据操作封装类  SysUtils,
Delphi ADO数据操作封装类  db, adodb, commonFunction, msg;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
type
Delphi ADO数据操作封装类  TopeDataSet 
= class
Delphi ADO数据操作封装类  public
Delphi ADO数据操作封装类    
{修改已发生,但还没有得到应用的记录,在关闭窗口前应给予提示}
Delphi ADO数据操作封装类    
function adoUpdatesPending(adoDataSet: TCustomAdoDataSet): boolean;
Delphi ADO数据操作封装类    
{增加}
Delphi ADO数据操作封装类    
procedure Append(adq: TadoQuery);
Delphi ADO数据操作封装类    
{保存}
Delphi ADO数据操作封装类    
procedure Save(adq: TadoQuery);
Delphi ADO数据操作封装类    
{删除}
Delphi ADO数据操作封装类    
procedure delete(adq: TadoQuery);
Delphi ADO数据操作封装类    
{刷新数据集}
Delphi ADO数据操作封装类    
procedure flash(adq: TadoQuery);
Delphi ADO数据操作封装类    
{事务提交}
Delphi ADO数据操作封装类    
procedure adqCommit(adq: TadoQuery);
Delphi ADO数据操作封装类    
{查询数据集}
Delphi ADO数据操作封装类    
procedure adqQuery(adq: TadoQuery; s: string);
Delphi ADO数据操作封装类    
{带参查询数据集}
Delphi ADO数据操作封装类    
procedure adqQueryPara(adq: TadoQuery; s: string; s1: variant);
Delphi ADO数据操作封装类    
procedure adqQueryPara2(adq: TadoQuery; s: string; s1: variant; s2: variant);
Delphi ADO数据操作封装类    
procedure adqQueryPara3(adq: TadoQuery; s: string; s1: variant; s2: variant; s3: variant);
Delphi ADO数据操作封装类    
procedure adqQueryPara4(adq: TadoQuery; s: string; s1: variant; s2: variant; s3: variant; s4:       variant);
Delphi ADO数据操作封装类    
{更新数据集}
Delphi ADO数据操作封装类    
procedure adqExec(adq: TadoQuery; s: string);
Delphi ADO数据操作封装类    
{带参更新数据集}
Delphi ADO数据操作封装类    
procedure adqExecPara(adq: TadoQuery; s: string; s1: variant);
Delphi ADO数据操作封装类    
procedure adqExecPara2(adq: TadoQuery; s: string; s1: variant; s2: variant);
Delphi ADO数据操作封装类    
procedure adqExecPara3(adq: TadoQuery; s: string; s1: variant; s2: variant; s3: variant);
Delphi ADO数据操作封装类    
procedure adqExecPara5(adq: TadoQuery; s: string; s1: variant; s2: variant; s3: variant; s4:       variant; s5: variant);
Delphi ADO数据操作封装类    
procedure adqExecPara6(adq: TadoQuery; s: string; s1: variant; s2: variant; s3: variant; s4:       variant; s5: variant; s6: variant);
Delphi ADO数据操作封装类  
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类implementation
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
{ TopeDataSet }
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
function TopeDataSet.adoUpdatesPending(
Delphi ADO数据操作封装类  adoDataSet: TCustomAdoDataSet): boolean;
Delphi ADO数据操作封装类
var
Delphi ADO数据操作封装类  clone: TadoDataSet;
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  clone :
= TadoDataSet.create(nil);
Delphi ADO数据操作封装类  try
Delphi ADO数据操作封装类    clone.clone(adoDataSet);               
//复制
Delphi ADO数据操作封装类    clone.filterGroup :
= fgPendingRecords; //已得到修改但还没有得到应用的所有记录
Delphi ADO数据操作封装类    clone.filtered :
= true;
Delphi ADO数据操作封装类    result :
= not(clone.bof and clone.eof);
Delphi ADO数据操作封装类    clone.close;
Delphi ADO数据操作封装类  finally
Delphi ADO数据操作封装类    clone.free;
Delphi ADO数据操作封装类  
end;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure TopeDataSet.adqCommit(adq: TadoQuery);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  try
Delphi ADO数据操作封装类    adq.Connection.CommitTrans;
Delphi ADO数据操作封装类    info(SopeSuccess, Scorp);
Delphi ADO数据操作封装类  except
Delphi ADO数据操作封装类    adq.Connection.RollbackTrans;
Delphi ADO数据操作封装类    info(SopeFail, Scorp, 
16);
Delphi ADO数据操作封装类  
end;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure TopeDataSet.adqExec(adq: TadoQuery; s: string);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Close;
Delphi ADO数据操作封装类  adq.SQL.Clear;
Delphi ADO数据操作封装类  adq.SQL.Text :
= s;
Delphi ADO数据操作封装类  adq.ExecSQL;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure TopeDataSet.adqExecPara(adq: TadoQuery; s: string;
Delphi ADO数据操作封装类  s1: variant);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Close;
Delphi ADO数据操作封装类  adq.SQL.Clear;
Delphi ADO数据操作封装类  adq.SQL.Text :
= s;
Delphi ADO数据操作封装类  adq.Parameters[
0].Value := s1;
Delphi ADO数据操作封装类  adq.ExecSQL;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure TopeDataSet.adqExecPara2(adq: TadoQuery; s: string; s1,
Delphi ADO数据操作封装类  s2: variant);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Close;
Delphi ADO数据操作封装类  adq.SQL.Clear;
Delphi ADO数据操作封装类  adq.SQL.Text :
= s;
Delphi ADO数据操作封装类  adq.Parameters[
0].Value := s1;
Delphi ADO数据操作封装类  adq.Parameters[
1].Value := s2;
Delphi ADO数据操作封装类  adq.ExecSQL;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure TopeDataSet.adqExecPara3(adq: TadoQuery; s: string; s1,
Delphi ADO数据操作封装类  s2, s3: variant);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Close;
Delphi ADO数据操作封装类  adq.SQL.Clear;
Delphi ADO数据操作封装类  adq.SQL.Text :
= s;
Delphi ADO数据操作封装类  adq.Parameters[
0].Value := s1;
Delphi ADO数据操作封装类  adq.Parameters[
1].Value := s2;
Delphi ADO数据操作封装类  adq.Parameters[
2].Value := s3;
Delphi ADO数据操作封装类  adq.ExecSQL;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure TopeDataSet.adqExecPara5(adq: TadoQuery; s: string; s1,
Delphi ADO数据操作封装类  s2, s3, s4, s5: variant);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Close;
Delphi ADO数据操作封装类  adq.SQL.Clear;
Delphi ADO数据操作封装类  adq.SQL.Text :
= s;
Delphi ADO数据操作封装类  adq.Parameters[
0].Value := s1;
Delphi ADO数据操作封装类  adq.Parameters[
1].Value := s2;
Delphi ADO数据操作封装类  adq.Parameters[
2].Value := s3;
Delphi ADO数据操作封装类  adq.Parameters[
3].Value := s4;
Delphi ADO数据操作封装类  adq.Parameters[
4].Value := s5;
Delphi ADO数据操作封装类  adq.ExecSQL;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure TopeDataSet.adqExecPara6(adq: TadoQuery; s: string; s1,
Delphi ADO数据操作封装类  s2, s3, s4, s5, s6: variant);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Close;
Delphi ADO数据操作封装类  adq.SQL.Clear;
Delphi ADO数据操作封装类  adq.SQL.Text :
= s;
Delphi ADO数据操作封装类  adq.Parameters[
0].Value := s1;
Delphi ADO数据操作封装类  adq.Parameters[
1].Value := s2;
Delphi ADO数据操作封装类  adq.Parameters[
2].Value := s3;
Delphi ADO数据操作封装类  adq.Parameters[
3].Value := s4;
Delphi ADO数据操作封装类  adq.Parameters[
4].Value := s5;
Delphi ADO数据操作封装类  adq.Parameters[
5].Value := s6;
Delphi ADO数据操作封装类  adq.ExecSQL;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure TopeDataSet.adqQuery(adq: TadoQuery; s: string);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Close;
Delphi ADO数据操作封装类  adq.SQL.Clear;
Delphi ADO数据操作封装类  adq.SQL.Text :
= s;
Delphi ADO数据操作封装类  adq.Open;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure TopeDataSet.adqQueryPara(adq: TadoQuery; s: string;
Delphi ADO数据操作封装类  s1: variant);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Close;
Delphi ADO数据操作封装类  adq.SQL.Clear;
Delphi ADO数据操作封装类  adq.SQL.Text :
= s;
Delphi ADO数据操作封装类  adq.Parameters[
0].Value := s1;
Delphi ADO数据操作封装类  adq.open;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure TopeDataSet.adqQueryPara2(adq: TadoQuery;
Delphi ADO数据操作封装类  s: string; s1, s2: variant);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Close;
Delphi ADO数据操作封装类  adq.SQL.Clear;
Delphi ADO数据操作封装类  adq.SQL.Text :
= s;
Delphi ADO数据操作封装类  adq.Parameters[
0].Value := s1;
Delphi ADO数据操作封装类  adq.Parameters[
1].Value := s2;
Delphi ADO数据操作封装类  adq.open;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure TopeDataSet.adqQueryPara3(adq: TadoQuery;
Delphi ADO数据操作封装类  s: string; s1, s2, s3: variant);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Close;
Delphi ADO数据操作封装类  adq.SQL.Clear;
Delphi ADO数据操作封装类  adq.SQL.Text :
= s;
Delphi ADO数据操作封装类  adq.Parameters[
0].Value := s1;
Delphi ADO数据操作封装类  adq.Parameters[
1].Value := s2;
Delphi ADO数据操作封装类  adq.Parameters[
2].Value := s3;
Delphi ADO数据操作封装类  adq.Open;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure TopeDataSet.adqQueryPara4(adq: TadoQuery;
Delphi ADO数据操作封装类  s: string; s1, s2, s3, s4: variant);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Close;
Delphi ADO数据操作封装类  adq.SQL.Clear;
Delphi ADO数据操作封装类  adq.SQL.Text :
= s;
Delphi ADO数据操作封装类  adq.Parameters[
0].Value := s1;
Delphi ADO数据操作封装类  adq.Parameters[
1].Value := s2;
Delphi ADO数据操作封装类  adq.Parameters[
2].Value := s3;
Delphi ADO数据操作封装类  adq.Parameters[
3].Value := s4;
Delphi ADO数据操作封装类  adq.Open;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure TopeDataSet.Append(adq: TadoQuery);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Append;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure TopeDataSet.delete(adq: TadoQuery);
Delphi ADO数据操作封装类
var
Delphi ADO数据操作封装类  i: integer;
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  
if adq.IsEmpty then
Delphi ADO数据操作封装类    abort;
Delphi ADO数据操作封装类  i :
= adq.RecNo;
Delphi ADO数据操作封装类  
if queryInfo(SifDel, Scorp) then
Delphi ADO数据操作封装类  
begin
Delphi ADO数据操作封装类    try
Delphi ADO数据操作封装类      adq.RecNo :
= i;
Delphi ADO数据操作封装类      adq.Delete;
Delphi ADO数据操作封装类      adq.UpdateBatch();  
//批更新
Delphi ADO数据操作封装类    except
Delphi ADO数据操作封装类      adq.CancelBatch();
Delphi ADO数据操作封装类      info(SdelError, Scorp, 
16);
Delphi ADO数据操作封装类    
end;
Delphi ADO数据操作封装类  
end;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure TopeDataSet.flash(adq: TadoQuery);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Close;
Delphi ADO数据操作封装类  adq.Open;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure TopeDataSet.Save(adq: TadoQuery);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  try
Delphi ADO数据操作封装类    adq.UpdateBatch();
Delphi ADO数据操作封装类    info(Ssave_success, Scorp);
Delphi ADO数据操作封装类  except
Delphi ADO数据操作封装类    adq.CancelBatch();
Delphi ADO数据操作封装类    info(Ssave_fail, Scorp, 
16);
Delphi ADO数据操作封装类  
end;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
end.
Delphi ADO数据操作封装类
procedure adqExec(adq: TadoQuery; s: string);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Close;
Delphi ADO数据操作封装类  adq.SQL.Clear;
Delphi ADO数据操作封装类  adq.SQL.Text :
= s;
Delphi ADO数据操作封装类  adq.ExecSQL;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure adqExecPara(adq: TadoQuery; s: string;
Delphi ADO数据操作封装类  s1: variant);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Close;
Delphi ADO数据操作封装类  adq.SQL.Clear;
Delphi ADO数据操作封装类  adq.SQL.Text :
= s;
Delphi ADO数据操作封装类  adq.Parameters[
0].Value := s1;
Delphi ADO数据操作封装类  adq.ExecSQL;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure adqQuery(adq: TadoQuery; s: string);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Close;
Delphi ADO数据操作封装类  adq.SQL.Clear;
Delphi ADO数据操作封装类  adq.SQL.Text :
= s;
Delphi ADO数据操作封装类  adq.Open;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure adqQueryPara(adq: TadoQuery; s: string; s1: variant);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Close;
Delphi ADO数据操作封装类  adq.SQL.Clear;
Delphi ADO数据操作封装类  adq.SQL.Text :
= s;
Delphi ADO数据操作封装类  adq.Parameters[
0].Value := s1;
Delphi ADO数据操作封装类  adq.open;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure Append(adq: TadoQuery);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Append;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure delete(adq: TadoQuery);
Delphi ADO数据操作封装类
var
Delphi ADO数据操作封装类  i: integer;
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  
if adq.IsEmpty then
Delphi ADO数据操作封装类    abort;
Delphi ADO数据操作封装类  i :
= adq.RecNo;
Delphi ADO数据操作封装类  
if queryInfo(SifDel, Scorp) then
Delphi ADO数据操作封装类  
begin
Delphi ADO数据操作封装类    try
Delphi ADO数据操作封装类      adq.RecNo :
= i;
Delphi ADO数据操作封装类      adq.Delete;
Delphi ADO数据操作封装类      adq.UpdateBatch();  
Delphi ADO数据操作封装类    except
Delphi ADO数据操作封装类      adq.CancelBatch();
Delphi ADO数据操作封装类      showmessage(
'Fail');
Delphi ADO数据操作封装类    
end;
Delphi ADO数据操作封装类  
end;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure flash(adq: TadoQuery);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  adq.Close;
Delphi ADO数据操作封装类  adq.Open;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
procedure Save(adq: TadoQuery);
Delphi ADO数据操作封装类
begin
Delphi ADO数据操作封装类  try
Delphi ADO数据操作封装类    adq.UpdateBatch();
Delphi ADO数据操作封装类    showmessage(
'Success');
Delphi ADO数据操作封装类  except
Delphi ADO数据操作封装类    adq.CancelBatch();
Delphi ADO数据操作封装类    showmessage(
'Fail');
Delphi ADO数据操作封装类  
end;
Delphi ADO数据操作封装类
end;
Delphi ADO数据操作封装类
Delphi ADO数据操作封装类
end
Delphi ADO数据操作封装类

相关文章: