[firebase-br] Meio OFF [SQLSERVER VS FIREBIRD ou ORACLE]

Davi Eduardo Borges Wall davi.wall em mult.com.br
Sex Jun 8 10:55:50 -03 2007


Olá amigos,

 

 

Tenho uma dúvida intrigante. Trabalho no desenvolvimento de uma  aplicação multibanco SQLSERVER, FIREBIRD, ORACLE.

 

A questão é a seguinte...

 

(utilizando ReadCommited)

Inicio uma transação, em uma tabela eu altero um registro da coluna "DESCRICAO" de "TESTE" para "XXXX" e ainda não dei COMMIT.

 

Se em outra conexão eu efetuar um select desta tabela, o firebird e o oracle me retornam o valor TESTE para este registro. (valor anterior ao inicio da transação)

 

No SQL SERVER da LOCK! 

 

Procurei na internet todo tipo de informação a respeito disto, e tudo indica que este é o comportamento correto do SQLSERVER

nesta ocasião.

 

A minha questão é POR QUÊ? Porque o SQLSERVER faz uma barbaridade dessas?

Se eu quero somente ler dados "COMMITADOS" o que ta não está commitado na faz diferença então pra que dar lock?

 

Pelo que percebi isto não tem solução, mas ainda estou muito curioso para saber o que levou a microsoft a seguir este caminho, totalmente diferente de outros SGDB's do mercado?

 

 

Se falei alguma besteira, por favor, me corrijam!

Qualquer dica é bem vinda, até mesmo o endereço de um grupo de discussão SQLSERVER.

 

[]'s

Obrigado.

Davi Wall.

 




Mais detalhes sobre a lista de discussão lista