Re: Dirty reads with OnLine
Posted in 1995
tonytd@ttyrwhit.demon.co.uk (Tony Tyrwhitt-Drake) writes:
>In article <49d3rv$fg3$2@mhafm.production.compuserve.com>, Tim Porreca <72560.460@CompuServe.COM> says:
>>
>>
>>As a recent SE convert, I am having trouble migrating to OnLine.
>>What I want (NEED) is row level locking and dirty reads. Just
>>like SE. Problem is I can't seem to make it happen.
>>
>You don't say if you are using Online 5.x or 6 or 7
>But if its 5.x then
>In 5 the default locking level is page and the default
>isolation level for a non ansi database is committed read.
>Create tables with lock mode set to row or alter them to row
>level locking. Syntax is
>CREATE TABLE tabname ( field1 char(3) etc ) lock mode row;
>or ALTER TABLE tabname lock mode (row);
>All users will get comitted read level isolation unless
>they ask otherwise. For read only reports it is not a bad
>idea to set isolation to dirty read, but for general
>stuff committed read is no problem and differs only
>from dirty read in that you know that what you are
>reading has been committed and you get shared locks
>on tables/rows accessed, but only for the duration of the
>select or whatever.
But as I just found out, if you do COMMITTED READ or above, you'll
loop on a -244 SQLCODE if any update locks are around. Nice ..