Friday, March 30, 2012

READ_COMMITTED_SNAPSHOT

READ_COMMITTED_SNAPSHOT in 2005 is what I wanted.

However, I am still using 2000. READ_COMMITTED in 2000 is different.

Can anyone give me advice on this issue?

(or there is no way in Sql Server 2000 to handle the following scenario:

Process One

UPDATE tableA SET fieldB = 'testing' WHERE fieldA = 1;

Process Two

SELECT * FROM tableA WHERE fieldA = 1;

While Process One is working, Process Two will fail. But I just want to allow Process Two to read the data (i.e. the version that before Process One is working). This is what READ_COMMITTED_SNAPSHOT do in Sql Server 2005.

)

Thanks for any advice.

Hi Wilson. There is no automatic method to allow this type of read in Sql 2000. You can make use of the read uncommitted isolation level, which will give you dirty reads (in your scenario above process two would read a value of 'testing' for fieldB where fieldA = 1). Of course, using the read committed isolation level in Sql 2000, if the transaction isn't long running, you should still be able to read the data successfully...perhaps we could help you tune the schema a bit to allow for faster read/write access and shorter transaction time instead?

HTH,

Chad

|||

Thanks for your confirmation.

Better to upgrade to Sql Server 2005.

Thanks again.

sql

No comments:

Post a Comment