I know Oracle uses multi-versioning. My understanding in SQL Server reads block writes. I was talking to someone recently who told me that there are ways to get around situations where you have an OLTP and need to full scan a table without blocking your OLTP. Does anyone know about this? I don't use SQL Server. I am just curious. Does anyone know how DB2 handles locking and transaction control? I was told by someone who uses DB2 that there are really two versions. One for the main frame optimized for OLTPs(I could have this backward) and one for Unix that is optimized for datawarehousing. Do these versions have different locking mechanisms?