1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > delphi通过odac调用oracle 过程参数为数组 delphi odac执行存储过程的正确和简单方法...

delphi通过odac调用oracle 过程参数为数组 delphi odac执行存储过程的正确和简单方法...

时间:2022-02-14 07:57:18

相关推荐

delphi通过odac调用oracle 过程参数为数组 delphi odac执行存储过程的正确和简单方法...

--插入记录

function ft_addTable(PTableName string, PTableId out integer)

return integer;

错误的方法

var

OraStoredProc1 : TOraStoredProc;

begin

OraStoredProc1 := TOraStoredProc.Create(nil);

try

OraStoredProc1.Session := FMyComDBConn.FSession;

OraStoredProc1.StoredProcName := 'TableFielddef_Pack.ft_addTable';

OraStoredProc1.SQL.Add('begin');

OraStoredProc1.SQL.Add(':RESULT :=TableFielddef_Pack.ft_addTable(:PTableName, :PTableId);');

OraStoredProc1.SQL.Add('end;');

OraStoredProc1.Params.CreateParam(ftString, 'Result', ptResult);

OraStoredProc1.Params.CreateParam(ftString, 'PTableName', ptInput);

OraStoredProc1.Params.CreateParam(ftinteger, 'PTableId', ptOutput);

OraStoredProc1.ParamByName('PTableName').Value := Tablename;

OraStoredProc1.Execute;

Result := OraStoredProc1.ParamByName('PTableId').AsInteger;

finally

OraStoredProc1.Free;

end;

end;

正确的方法:

var

OraStoredProc1 : TOraStoredProc;

begin

OraStoredProc1 := TOraStoredProc.Create(nil);

try

OraStoredProc1.Session := FMyComDBConn.FSession;

OraStoredProc1.StoredProcName := 'TableFielddef_Pack.ft_addTable';

OraStoredProc1.PrepareSQL;

OraStoredProc1.ParamByName('ptablename').Value := Tablename;

OraStoredProc1.Execute;

Result := OraStoredProc1.ParamByName('ptableid').AsInteger;

finally

OraStoredProc1.Free;

end;end;

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。