none
Aplicação consegue acessar os dados do banco de dados, mas não consegue alterar(salvar e deletar) os dados RRS feed

  • Pergunta

  • Boa Tarde,

    Desenvolvi uma aplicação Web (Asp.net, C#, Sql Server), testei todas as telas, todas as funções (pesquisar, salvar, alterar e deletar) e funcionou tudo perfeitamente. Então resolvi publicar a aplicação. Então usando o Web Developer eu fui na função Publish, escolhi a opção File System. Ele gerou para mim uma pasta com os arquivos. Usando esses arquivos gerados pelo, eu criei no IIS um diretório virtual. Ao acessar o diretório virtual eu consigo logar no sistema, e ir em todas as telas e pesquisar os dados, porém ele não permite alterar(alterar, salvar e deletar) os dados.

    Não tenho a minima ideia porque isso aconteceu. Alguém já vivenciou uma situação parecida com essa? Será que podem me ajudar?

     

    sábado, 31 de março de 2012 17:15

Respostas


  • Boa Noite,
    Graças a Deus consegui resolver! Além de configurar a permissão de configuração de acesso para ASPNet, Network Service e o "usuário do IIS". Você identifica ele em propriedades, segurança de diretório, controle de acesso anonimo e autenticação.

    Obrigada a todos pelas dicas! Me ajudou bastante a encontrar a solução.
    • Marcado como Resposta Emmannuelle terça-feira, 3 de abril de 2012 01:12
    terça-feira, 3 de abril de 2012 01:12

Todas as Respostas

  • Boa tarde.

    Poste a mensagem de erro que aparece quando você tenta executar os comandos.


    Consultoria .NET
    ANALISTA DESENVOLVEDOR
    Se esta sugestão for útil, por favor, classifique-a como útil.
    Se ela lhe ajudar a resolver o problema, por favor, marque-a como resposta.
    Blog .Net Descomplicado

    sábado, 31 de março de 2012 19:42
  • Boa noite Edson,

    Verifiquei a mensagem de erro, e quando eu tento excluir ele retorna o Erro SQL: 3906. Pesquisando na internet percebi que significa 3906: Falha ao atualizar o banco de dados "%1!" porque ele é somente leitura.). 

    Como alterar essa propriedade no banco de dados? Fiz algumas tentativas aqui, mas foram frustradas.
    sábado, 31 de março de 2012 22:25
  • Este banco esta em um provedor?


    Ninguém falou que seria fácil!

    domingo, 1 de abril de 2012 02:40
  • Boa tarde, Não, não está. É tudo acesso local(localhost). E o erro que aparece é esse: Erro SQL: 3906Failed to update database "C:\WEBERROR\APP_DATA\WEB.MDF" because the database is read-only.
    domingo, 1 de abril de 2012 16:39
  • Com esta configurada a permissão a esta pasta para seu usuáro?

    Sem estverem ok eente estes comandos para alterar o banco:

    ALTER DATABASE  USER_CONTROL SET READ_WRITE
    GO

    ALTER DATABASE  USER_CONTROL SET READ_ONLY
    GO



    Ninguém falou que seria fácil!

    domingo, 1 de abril de 2012 21:04
  • Boa noite Jothaz,

    Obrigada pela dica. Fiz um teste antes de executar o comando acima, e pelo Server Management Studio eu consigo alterar os dados. Porem quando tento fazer acesso via aplicação é que ele retorna essa mensagem de erro.

    Adicionei na pasta APP_DATA o usuário Network Service. E tentei adicionar o usuário ASP.net, porém ele retornou uma mensagem de erro, ele não deixou adicionar. Mas sem sucesso. Eu continuo acessando a aplicação conseguindo logar, pesquisar os dados mas sem poder altera-los.

    Não sei mais como resolver esse problema.

    Será que você tem mais alguma dica?

    Obrigada pela ajuda!

    segunda-feira, 2 de abril de 2012 01:47
  • Pode ser permissão tb, qual erro ele gera?

    Não esqueça de usar o componente </> na barra para posta seu código. Microsoft MCPD,MCTS,MCC

    segunda-feira, 2 de abril de 2012 11:20
    Moderador
  • Boa tarde, Não, não está. É tudo acesso local(localhost). E o erro que aparece é esse: Erro SQL: 3906Failed to update database "C:\WEBERROR\APP_DATA\WEB.MDF" because the database is read-only.

    Cara o seu .mdf está na mesma pasta da aplicação?

    Verifique as permissões do arquivo .mdf! Me cheira a permissão "somente leitura" no arquivo...


    Wladiston Paiva - @wladiston - Microsoft MCTS, MTA

    segunda-feira, 2 de abril de 2012 12:33
  • Foi um dos primeiros questionamentos que fiz.

    Libere as permissões da pasta e retorne.


    Ninguém falou que seria fácil!

    segunda-feira, 2 de abril de 2012 14:15

  • Boa Noite,
    Graças a Deus consegui resolver! Além de configurar a permissão de configuração de acesso para ASPNet, Network Service e o "usuário do IIS". Você identifica ele em propriedades, segurança de diretório, controle de acesso anonimo e autenticação.

    Obrigada a todos pelas dicas! Me ajudou bastante a encontrar a solução.
    • Marcado como Resposta Emmannuelle terça-feira, 3 de abril de 2012 01:12
    terça-feira, 3 de abril de 2012 01:12