none
A operação deve usar uma consulta atualizável RRS feed

  • Pergunta

  • Sou iniciante como Visual Web.

    Quando uso o F5 pelo proprio Visual consigo atualizar, incluir e excluir em um banco de dados do access, mas qd uso via IE ao tentar usar o banco de dados tenho a seguinte mensagem:

    Alguém pode me ajudar?

     

    A operação deve usar uma consulta atualizável.

    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

    Exception Details: System.Data.OleDb.OleDbException: A operação deve usar uma consulta atualizável.

    Source Error:

    An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

    Stack Trace:

    [OleDbException (0x80004005): A operação deve usar uma consulta atualizável.]
       System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult) +267
       System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult) +192
       System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult) +48
       System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method) +106
       System.Data.OleDb.OleDbCommand.ExecuteNonQuery() +108
       System.Web.UI.WebControls.SqlDataSourceView.ExecuteDbCommand(DbCommand command, DataSourceOperation operation) +401
       System.Web.UI.WebControls.SqlDataSourceView.ExecuteUpdate(IDictionary keys, IDictionary values, IDictionary oldValues) +721
       System.Web.UI.DataSourceView.Update(IDictionary keys, IDictionary values, IDictionary oldValues, DataSourceViewOperationCallback callback) +78
       System.Web.UI.WebControls.FormView.HandleUpdate(String commandArg, Boolean causesValidation) +1150
       System.Web.UI.WebControls.FormView.HandleEvent(EventArgs e, Boolean causesValidation, String validationGroup) +461
       System.Web.UI.WebControls.FormView.OnBubbleEvent(Object source, EventArgs e) +95
       System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +35
       System.Web.UI.WebControls.FormViewRow.OnBubbleEvent(Object source, EventArgs e) +109
       System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +35
       System.Web.UI.WebControls.Button.OnCommand(CommandEventArgs e) +115
       System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +163
       System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7
       System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11
       System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
       System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5102
    

    sexta-feira, 7 de julho de 2006 23:36

Todas as Respostas

  • olá

    Bem isto ocorre porque voce precisa ter permissões na pasta onde o banco de dados está.

    No caso, quando voce visualiza o site com o servidor do web developer ou visual studio 2005, ele se encarrega de "ajeitar" estas configurações. Mas quando voce fecha o servidor integrado, elas são perdidas.

    Para que funcione corretamente executando o IIS a pasta onde o Banco access está deve dar permissão ao usuários ASPNET, assim o mesmo poderá gravar na pasta e o erro deixará de ocorrer.

    Para isso faça o seguinte: abra o explorer>>ferramentas>>opções de pasta selecione a guia modo de exibição e desmarque a ultima caixa: "Usar compartilhamento simples de arquivo".

    Feito isso, navegue até a pasta do seu banco e clique com o lado direito selecionando "Compartilhamento e segurança". Selecone a aba Segurança e adicione o usuario aspnet. Não se esqueça de clicar em verificar e marcar a caixa "GRAVAR" no painel inferior.

    PS: Este procedimento se aplica ao windows XP.

    Espero ter ajudado

    Sanses

     

    domingo, 6 de agosto de 2006 08:30
  • Roberto,

    esse erro acontece porque o usuário ASPNET não tem a devidas permissões de gravação na pasta/arquivo MDB do Access.

     


    Ricardo Oneda
    http://thespoke.net/blogs/oneda/default.aspx

    domingo, 6 de agosto de 2006 17:21
    Moderador
  •  

    Olá Sanches,

     

    Além de dar permissão de gravação para o usuário asenet, fui obrigado a inserir e dar permissões para o usuário do IIS que é o "IUSR_servidor".

     

    Assim o iis + asp gravam no access.

     

    espero que ajude e Agradeço.

     

    Alexandre

    quinta-feira, 6 de setembro de 2007 18:55
  • Pessoal,

    Como o amigo Alexandre disse, acima em 2007 rsrsrs não adianta somente dar a permissão ao usuário "ASP.NET" não, tem que dar permissão ao usuário "IUSR_servidor" que daí vai funfar na boa e o erro nem vai mais aparecer e as informações serão gravadas show de bola, agora vale lembrar que somente dando as permissões a estes usuários na pasta onde o banco está localizado pelo explorer mesmo quer já funciona.

    Espero ter ajudado.  =)

    Marcelo Ferreira
    sexta-feira, 26 de junho de 2009 15:07