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
.
查看全文
相关阅读:
设计师
仅用递归函数和栈操作逆序一个栈
用两个栈实现队列
设计一个有getMin功能的栈(2)
设计一个有getMin功能的栈(1)
Java 泛型
servlet里获得jsp页面里select的选项之值
mac上mysql的GUI工具sequel pro
mac安装mysql的两种方法(含配置)
[转]在Mac系统中安装配置Tomcat及和Eclipse 配置
原文地址:https://www.cnblogs.com/sonicit/p/1120678.html
最新文章
解决mysql数据库乱码问题
request 解决中文乱码问题
servletRequest 常用操作
request 获取请求头
servletResponse 请求重定向
servletResponse 控制浏览器缓存
控制浏览器不要缓存
servletResponse 实用的页面跳转技术和定时刷新技术
servletResponse 随机生成图片验证码
计算机网络总结之运输层
热门文章
计算机网络课设之基于UDP协议的简易聊天机器人
计算机网络课设之基于UDP协议的简易聊天机器人
计算机网络总结之网络层
计算机网络总结之网络层
计算机网络总结之数据链路层
计算机网络总结之数据链路层
计算机网络总结之物理层
计算机网络总结之物理层
互联网时代常用网站资源整理汇总(一直在完善中)
Method, apparatus, and system for speculative abort control mechanisms
Copyright © 2011-2022 走看看