Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ProjetoSL

Acesso Simultâneo: "SQL Express 2005" e "VS Express 2005&#

Recommended Posts

Boa tarde.

 

Tenho um banco de dados em SQL Server Express 2005, e estou desenvolvendo uma aplicação em Visual Studio Express 2005.

 

Criei um banco de dados normalmente, de forma a poder acessá-lo tanto pelo SQL Management Studio como pela minha aplicação no VS (adicionando o Data Source ao projeto). Consigo inclusive abrir mais de uma instância do SQL e abrir a mesma tabela simultaneamente, OU abrir duas instâncias do Visual Studio e, debugando a minha aplicação, abrir a mesma tela (portanto acessando a mesma tabela) duas vezes simultaneamente.

 

Porém, não consigo fazer com que o VS acesse o banco de dados depois que ele foi acessado pelo SQL. Ele retorna um erro de "Login Failed" no próprio debug. A situação volta ao normal quando paro o banco e reinicio novamente, a aplicação volta a funcionar normalmente.

 

Por outro lado, também não consigo fazer o SQL acessar o banco de dados enquanto a aplicação está rodando no VS. O SQL retorna o erro 5120 quando clico no banco de dados no painel esquerdo do Management Studio, e também o erro 945 quando tento abrir as Propriedades do banco. Mas, da mesma forma, basta parar o serviço do SQL Server e reiniciar o banco, e a situação volta ao normal.

 

Minha pergunta é: Essa limitação é real? Tenho realmente que parar o servidor e reiniciá-lo a cada vez que trocar de ferramenta? (Visual Studio para SQL Management Studio, e vice-versa)? É uma limitação do sistema, ou eu estou fazendo algo errado?

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deve ser por causa que é Express.

Uso o Enterprise e acesso de tudo quanto é jeito e não me dá problema.

 

VS + management studio

 

ao mesmo tempo. Nâo dá erro.

 

 

O erro "Login Failed" tem mais alguma informação ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pela pronta resposta.

 

O erro no VS mostra esta tela de erro, com a indicação de "Login Failed", e com estes detalhes:

 

E aqui o link do erro do SQL Management Studio, quando tento abrir a tabela com o VS rodando.

 

Será mesmo uma limitação do Express? E se trocarmos para o Express 2008, será que o problema se mantém?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na mensagem do Management Studio diz que pode ser falta de memória ou de espaço livre.

Veja quanto de memória tem o PC.

Abra o VS e veja quando de espaço livre tem.

 

Dá uma olhada aqui também: http://msdn.microsoft.com/en-us/library/aa258746(SQL.80).aspx

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não é o caso de espaço em disco ou memória, há mais de 40GB livres no HD e a máquina tem 2GB de RAM, e não está rodando nenhum outro software mais "pesado".

 

Segundo esse link do site da Microsoft, o erro 945 ocorre quando é feito acesso a um banco marcado como "IsShutdown". Isso pode ser resolvido usando Alter Database com a opção Set Offline e em seguida Set Online.

 

Mas o estranho é o próprio VS mudar esse flag a cada vez que acessa o banco... não há razão para alterar o status do banco para IsShutdown só porque foi feito acesso a uma tabela do banco. O programa nem sequer faz nenhuma tarefa específica, simplesmente abre o data set colocado no projeto.

 

Em último caso, ainda dá pra colocar um script para rodar esse Alter Database quando fechar o programa. O problema é que, depois da implantação, não vai dar pra fazer isso quando houver vários usuários ao mesmo tempo acessando...

 

Esse tipo de coisa não deveria acontecer, pois estou no começo do desenvolvimento e ainda não coloquei nada muito "específico" do projeto, estou apenas seguindo a "receita de bolo" do próprio VS... simplesmente criei um projeto em branco e incluí um data set apontando para uma tabela. Não estou usando bancos de dados "estranhos" nem nenhuma "acrobacia"... enfim, vou tentar fazer pelo Express 2008 e ver se o problema persiste.

 

Em todo caso, obrigado pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.