dbaccess buffer
Posted in 2003
Topics: Server Administration
In dbaccess (for me, Informix 7.31), if I have the following
statements:
set lock mode to wait;
update table set column = 'X' where columnPK = 1;
update table set column = 'X' where columnPK = 2;
update table set column = 'X' where columnPK = 3;
I am under the assumption that each trasnaction is committed after the
semicolon - so in effect, I am making three distinct trasnactions to
the log (and the buffer). However, my colleague believes this would
be one transaction - so if the above statement repeated up to 15,000,
I would be locking out 15k rows. Is he correct?
Xeth Waxman wrote:
> In dbaccess (for me, Informix 7.31), if I have the following
> statements:
>
> set lock mode to wait;
> update table set column = 'X' where columnPK = 1;
> update table set column = 'X' where columnPK = 2;
> update table set column = 'X' where columnPK = 3;>
> I am under the assumption that each trasnaction is committed after the
> semicolon - so in effect, I am making three distinct trasnactions to
> the log (and the buffer). However, my colleague believes this would
> be one transaction - so if the above statement repeated up to 15,000,
> I would be locking out 15k rows. Is he correct?
It depends -- if you have transaction logging on AND you issued a BEGIN
WORK before this (OR you have an ANSI mode database), then your colleague
is right, otherwise you are.
What kind of name is Xeth anyway?