mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-27 00:30:33 +02:00
fcl-db: oracle: fix transaction parameters handling (only one of OCI_TRANS_READONLY, OCI_TRANS_READWRITE, OCI_TRANS_SERIALIZABLE should be used). Bug #28043
git-svn-id: trunk@30815 -
This commit is contained in:
parent
31c1581b9f
commit
b83ff7dd27
@ -772,22 +772,22 @@ var
|
||||
s : string;
|
||||
locTrans : TOracleTrans;
|
||||
begin
|
||||
flags := OCI_TRANS_NEW or OCI_TRANS_READWRITE;
|
||||
flags := OCI_TRANS_READWRITE;
|
||||
if AParams <> '' then begin
|
||||
i := 1;
|
||||
s := ExtractSubStr(AParams,i,StdWordDelims);
|
||||
while ( s <> '' ) do begin
|
||||
if ( s = 'readonly' ) then
|
||||
flags := flags and OCI_TRANS_READONLY
|
||||
flags := OCI_TRANS_READONLY
|
||||
else if ( s = 'serializable' ) then
|
||||
flags := flags and OCI_TRANS_SERIALIZABLE
|
||||
flags := OCI_TRANS_SERIALIZABLE
|
||||
else if ( s = 'readwrite' ) then
|
||||
flags := flags and OCI_TRANS_READWRITE;
|
||||
flags := OCI_TRANS_READWRITE;
|
||||
s := ExtractSubStr(AParams,i,StdWordDelims);
|
||||
end;
|
||||
end;
|
||||
locTrans := TOracleTrans(trans);
|
||||
locTrans.FOciFlags := flags;
|
||||
locTrans.FOciFlags := flags or OCI_TRANS_NEW;
|
||||
InternalStartDBTransaction(locTrans);
|
||||
Result := True;
|
||||
end;
|
||||
|
Loading…
Reference in New Issue
Block a user