Em que situações você obter diferentes usuários vendo linhas diferentes em uma tabela no SQL Server?

StackOverflow https://stackoverflow.com/questions/83295

  •  01-07-2019
  •  | 
  •  

Pergunta

SQL Server 2000 versão.

Nós temos um monte de desktops falando MSSQL Server. Ao olhar para um registro específico, alguns desktops retornar os dados corretos, mas alguns não.

O comando SQL é "* SELECT FROM PODORDH WHERE ([NO] = 6141)" Em uma ou duas desktops, isso retorna um registro. No servidor e em todos os outros desktops, nenhum registro é retornado.

O que áreas que eu preciso para olhar? O que faria com que isso aconteça?

Foi útil?

Solução

Este erro provavelmente vem de um usuário que apagou / inserido esse registro dentro de uma transação, mas ainda não cometeu referida operação.

Outras dicas

Verifique qual banco de dados e servidor que você está se conectando em cada máquina -. A consulta é bastante simples que você deve obter a mesma resposta em todos os lugares a menos que você está se conectando a diferentes bancos de dados ou servidores

Se é apenas uma estação de trabalho retornando a linha, então ele soa como estação de trabalho tem uma transação aberta que não tenha sido comprometida.

Caso contrário, é possível que os níveis de isolamento são diferentes para diferentes estações de trabalho, ie. alguns vão ver dados não confirmados e outros não vai?

Você pode querer olhar para as permissões para a tabela que você está selecionando, se você está se conectando ao servidor como um usuário diferente de cada máquina.

Se alguns usuários, mas outros não têm acesso ao ler que tabela, você pode obter o resultado que você descreve.

Depois de esgotar todas as opções mencionadas acima, gostaria de olhar em linha e tabela fechaduras. Se este for o caso, ele deverá retornar um erro dizendo que encontrou um bloqueio. Você está executando uma aplicação que pode ser engolir erros?

Talvez um ou dois usuários que encontram registros estiver usando um esquema nome diferente e, portanto, um tabelas diferentes. IE a maioria dos usuários estão usando dbo.PODORDH, mas um ou dois usuários estão usando otheruser.PODORDH.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top