[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