lists out of bound (0)........
我的数据库连接用的是dp7自带的dbexpress驱动,数据库连接没问题,可是但代码调用后台的包过程的时候,报错误,错误原因是:lists out of bound (0) 。。。
以下是我的代码,很精简的。拜托各位大虾看看!
//数据库连接
function TDBManager.setDataOneConnect(strServer,strUser,strPassword:string):boolean;
begin
try
with sqlconnCommon do
begin
LoginPrompt:=False;
ConnectionName:='hnfs';
LibraryName := 'dbexpora.dll';
GetDriverFunc := 'getSQLDriverORACLE';
DriverName:='Oracle';
VendorLib:='oci.dll';
Params.Clear;
Params.add('Multiple Transaction=true');
Params.Add('User_Name='+strUser);
Params.Add('Password='+strPassword);
Params.Add('Database='+strServer);
Open;
end;
result:=true;
except
result:=false;
end;
end;
//得到接收数据游标
function TDBManager.getInceptDataSet(strDate,strState:string):TSimpleDataSet;
var
sspData:TSQLStoredProc;
begin
try
sspData:=TSQLStoredProc.Create(nil);
sspData.SQLConnection:=sqlconnCommon;
sspData.Close;
sspData.Params.Clear ;
sspData.PackageName:='IncomeManger';
sspData.StoredProcName:='getInceptData';
sspData.Params.CreateParam(ftString,'strCheckDate',ptInput);
sspData.Params.CreateParam(ftString,'strCheckState',ptInput);
sspData.Params.CreateParam(ftCursor,'csrCursor',ptOutput);
sspData.Params.ParamByName('strCheckDate').Value:=strDate;
sspData.Params.ParamByName('strCheckState').Value:=strState;
sspData.ParamCheck:=true;
sspData.Open;
result:=TSimpleDataSet(sspData);
except
result:=nil;
end;
end;
报错误的位置在“sspData.Open;”,我想不通啊,代码没错误啊。。。
还有,各位大虾有没有高版本的dbexpoda.dll啊,不需要注册的,偶工程要的急啊。。。 拜托各位了。