Delphi中常常有用TStoredProc组件调用存储过程的语句。
通常的调试方法是跟踪代码中传入的实参,配合数据库中存储过程定义的形参,一一对应,进行调试。
对于参数数量少的情况,这种方法没什么不妥,但对于有几十个参数的存储过程,甚至传参顺序和定义顺序不同的情况,一一对应实参形参就变得很麻烦。
一个小技巧,可以通过代码来生成“形参-实参”对,进行调试。
var aList:TStringList;
aName,aValue:String;
astor:TStoredProc;
I:integer;
begin
with astor do
begin
for I:=0 to parameters.count -1 do
begin
aName:=parameters.items[I].displayName;
aValue:=parameters.items[I].value;
if VarIsEmpty(parameters.items[I].value) then aValue:='Unassigned';
else if VarIsNull(parameters.items[I].value) then aValue:='null';
else aValue:=VarToStr(parameters.items[I].value);
alist.add(aName+'='+aValue);
end;
end;
end;
本文介绍了一种通过代码生成‘形参-实参’对的方法,用于在Delphi中使用TStoredProc组件调用存储过程。此技巧特别适用于参数数量较多且传参顺序可能与定义顺序不同的情况,简化了调试过程。
363

被折叠的 条评论
为什么被折叠?



