zoukankan
html css js c++ java
Delphi ADO数据操作封装类
{
将数据集操作方面的东西全部封装成一个单独的类
TcustomAdoDataSet是TadoQuery、TadoTable、TadoDataSet、TadoCommand的公共祖先类
应尽量使用TadoDataSet和TadoCommand类
}
unit untOpeDataSet;
interface
uses
SysUtils,
db, adodb, commonFunction, msg;
type
TopeDataSet
=
class
public
{
修改已发生,但还没有得到应用的记录,在关闭窗口前应给予提示
}
function
adoUpdatesPending(adoDataSet: TCustomAdoDataSet): boolean;
{
增加
}
procedure
Append(adq: TadoQuery);
{
保存
}
procedure
Save(adq: TadoQuery);
{
删除
}
procedure
delete(adq: TadoQuery);
{
刷新数据集
}
procedure
flash(adq: TadoQuery);
{
事务提交
}
procedure
adqCommit(adq: TadoQuery);
{
查询数据集
}
procedure
adqQuery(adq: TadoQuery; s: string);
{
带参查询数据集
}
procedure
adqQueryPara(adq: TadoQuery; s: string; s1: variant);
procedure
adqQueryPara2(adq: TadoQuery; s: string; s1: variant; s2: variant);
procedure
adqQueryPara3(adq: TadoQuery; s: string; s1: variant; s2: variant; s3: variant);
procedure
adqQueryPara4(adq: TadoQuery; s: string; s1: variant; s2: variant; s3: variant; s4: variant);
{
更新数据集
}
procedure
adqExec(adq: TadoQuery; s: string);
{
带参更新数据集
}
procedure
adqExecPara(adq: TadoQuery; s: string; s1: variant);
procedure
adqExecPara2(adq: TadoQuery; s: string; s1: variant; s2: variant);
procedure
adqExecPara3(adq: TadoQuery; s: string; s1: variant; s2: variant; s3: variant);
procedure
adqExecPara5(adq: TadoQuery; s: string; s1: variant; s2: variant; s3: variant; s4: variant; s5: variant);
procedure
adqExecPara6(adq: TadoQuery; s: string; s1: variant; s2: variant; s3: variant; s4: variant; s5: variant; s6: variant);
end
;
implementation
{
TopeDataSet
}
function
TopeDataSet.adoUpdatesPending(
adoDataSet: TCustomAdoDataSet): boolean;
var
clone: TadoDataSet;
begin
clone :
=
TadoDataSet.create(
nil
);
try
clone.clone(adoDataSet);
//
复制
clone.filterGroup :
=
fgPendingRecords;
//
已得到修改但还没有得到应用的所有记录
clone.filtered :
=
true;
result :
=
not
(clone.bof
and
clone.eof);
clone.close;
finally
clone.free;
end
;
end
;
procedure
TopeDataSet.adqCommit(adq: TadoQuery);
begin
try
adq.Connection.CommitTrans;
info(SopeSuccess, Scorp);
except
adq.Connection.RollbackTrans;
info(SopeFail, Scorp,
16
);
end
;
end
;
procedure
TopeDataSet.adqExec(adq: TadoQuery; s: string);
begin
adq.Close;
adq.SQL.Clear;
adq.SQL.Text :
=
s;
adq.ExecSQL;
end
;
procedure
TopeDataSet.adqExecPara(adq: TadoQuery; s: string;
s1: variant);
begin
adq.Close;
adq.SQL.Clear;
adq.SQL.Text :
=
s;
adq.Parameters[
0
].Value :
=
s1;
adq.ExecSQL;
end
;
procedure
TopeDataSet.adqExecPara2(adq: TadoQuery; s: string; s1,
s2: variant);
begin
adq.Close;
adq.SQL.Clear;
adq.SQL.Text :
=
s;
adq.Parameters[
0
].Value :
=
s1;
adq.Parameters[
1
].Value :
=
s2;
adq.ExecSQL;
end
;
procedure
TopeDataSet.adqExecPara3(adq: TadoQuery; s: string; s1,
s2, s3: variant);
begin
adq.Close;
adq.SQL.Clear;
adq.SQL.Text :
=
s;
adq.Parameters[
0
].Value :
=
s1;
adq.Parameters[
1
].Value :
=
s2;
adq.Parameters[
2
].Value :
=
s3;
adq.ExecSQL;
end
;
procedure
TopeDataSet.adqExecPara5(adq: TadoQuery; s: string; s1,
s2, s3, s4, s5: variant);
begin
adq.Close;
adq.SQL.Clear;
adq.SQL.Text :
=
s;
adq.Parameters[
0
].Value :
=
s1;
adq.Parameters[
1
].Value :
=
s2;
adq.Parameters[
2
].Value :
=
s3;
adq.Parameters[
3
].Value :
=
s4;
adq.Parameters[
4
].Value :
=
s5;
adq.ExecSQL;
end
;
procedure
TopeDataSet.adqExecPara6(adq: TadoQuery; s: string; s1,
s2, s3, s4, s5, s6: variant);
begin
adq.Close;
adq.SQL.Clear;
adq.SQL.Text :
=
s;
adq.Parameters[
0
].Value :
=
s1;
adq.Parameters[
1
].Value :
=
s2;
adq.Parameters[
2
].Value :
=
s3;
adq.Parameters[
3
].Value :
=
s4;
adq.Parameters[
4
].Value :
=
s5;
adq.Parameters[
5
].Value :
=
s6;
adq.ExecSQL;
end
;
procedure
TopeDataSet.adqQuery(adq: TadoQuery; s: string);
begin
adq.Close;
adq.SQL.Clear;
adq.SQL.Text :
=
s;
adq.Open;
end
;
procedure
TopeDataSet.adqQueryPara(adq: TadoQuery; s: string;
s1: variant);
begin
adq.Close;
adq.SQL.Clear;
adq.SQL.Text :
=
s;
adq.Parameters[
0
].Value :
=
s1;
adq.open;
end
;
procedure
TopeDataSet.adqQueryPara2(adq: TadoQuery;
s: string; s1, s2: variant);
begin
adq.Close;
adq.SQL.Clear;
adq.SQL.Text :
=
s;
adq.Parameters[
0
].Value :
=
s1;
adq.Parameters[
1
].Value :
=
s2;
adq.open;
end
;
procedure
TopeDataSet.adqQueryPara3(adq: TadoQuery;
s: string; s1, s2, s3: variant);
begin
adq.Close;
adq.SQL.Clear;
adq.SQL.Text :
=
s;
adq.Parameters[
0
].Value :
=
s1;
adq.Parameters[
1
].Value :
=
s2;
adq.Parameters[
2
].Value :
=
s3;
adq.Open;
end
;
procedure
TopeDataSet.adqQueryPara4(adq: TadoQuery;
s: string; s1, s2, s3, s4: variant);
begin
adq.Close;
adq.SQL.Clear;
adq.SQL.Text :
=
s;
adq.Parameters[
0
].Value :
=
s1;
adq.Parameters[
1
].Value :
=
s2;
adq.Parameters[
2
].Value :
=
s3;
adq.Parameters[
3
].Value :
=
s4;
adq.Open;
end
;
procedure
TopeDataSet.Append(adq: TadoQuery);
begin
adq.Append;
end
;
procedure
TopeDataSet.delete(adq: TadoQuery);
var
i: integer;
begin
if
adq.IsEmpty
then
abort;
i :
=
adq.RecNo;
if
queryInfo(SifDel, Scorp)
then
begin
try
adq.RecNo :
=
i;
adq.Delete;
adq.UpdateBatch();
//
批更新
except
adq.CancelBatch();
info(SdelError, Scorp,
16
);
end
;
end
;
end
;
procedure
TopeDataSet.flash(adq: TadoQuery);
begin
adq.Close;
adq.Open;
end
;
procedure
TopeDataSet.Save(adq: TadoQuery);
begin
try
adq.UpdateBatch();
info(Ssave_success, Scorp);
except
adq.CancelBatch();
info(Ssave_fail, Scorp,
16
);
end
;
end
;
end
.
procedure
adqExec(adq: TadoQuery; s: string);
begin
adq.Close;
adq.SQL.Clear;
adq.SQL.Text :
=
s;
adq.ExecSQL;
end
;
procedure
adqExecPara(adq: TadoQuery; s: string;
s1: variant);
begin
adq.Close;
adq.SQL.Clear;
adq.SQL.Text :
=
s;
adq.Parameters[
0
].Value :
=
s1;
adq.ExecSQL;
end
;
procedure
adqQuery(adq: TadoQuery; s: string);
begin
adq.Close;
adq.SQL.Clear;
adq.SQL.Text :
=
s;
adq.Open;
end
;
procedure
adqQueryPara(adq: TadoQuery; s: string; s1: variant);
begin
adq.Close;
adq.SQL.Clear;
adq.SQL.Text :
=
s;
adq.Parameters[
0
].Value :
=
s1;
adq.open;
end
;
procedure
Append(adq: TadoQuery);
begin
adq.Append;
end
;
procedure
delete(adq: TadoQuery);
var
i: integer;
begin
if
adq.IsEmpty
then
abort;
i :
=
adq.RecNo;
if
queryInfo(SifDel, Scorp)
then
begin
try
adq.RecNo :
=
i;
adq.Delete;
adq.UpdateBatch();
except
adq.CancelBatch();
showmessage(
'
Fail
'
);
end
;
end
;
end
;
procedure
flash(adq: TadoQuery);
begin
adq.Close;
adq.Open;
end
;
procedure
Save(adq: TadoQuery);
begin
try
adq.UpdateBatch();
showmessage(
'
Success
'
);
except
adq.CancelBatch();
showmessage(
'
Fail
'
);
end
;
end
;
end
.
查看全文
相关阅读:
sprintf使用
Android ListView保持选中项高亮
Creational Patterns创建型模式
C和指针终于看到指针这一章
C++随笔001
TCP reset
开始看设计模式英文版了
Excel条件求和
linux中安装软件,查看、卸载已安装软件方法
linux vi文本编辑器三种模式切换及常用操作
原文地址:https://www.cnblogs.com/sonicit/p/1120678.html
最新文章
希尔排序_排序算法_算法
初识NVelocity
选择排序_排序算法_算法
通过css3设置div圆角
day_log 12月份的
迅雷和QQ播放器
各模型关闭套接字时机
winXP下的磁盘相关知识点
QQ主题活动
day_log 11月份的
热门文章
day_log 10月份的
心情BSOD
再挑软柿子
yum源安装mysql数据库 添加密码
生成ip地址表的不同姿势脚本生成和echo命令生成
恢复隐藏文件
is幻梦 Linux命令之文件和目录操作命令(二)——查看文件内容cat、more、less、tail、head
Linux命令之文件和目录操作命令(一)—— ls
python调用系统命令的方法
快一个月了再继续看设计模式
Copyright © 2011-2022 走看看