none
Atualização de um campo tipo Date no Access RRS feed

  • Pergunta

  • Salve!

    Aplicação web com VB2005 e Access 2003.

    Numa das tabelas do "banco" Access que estou usando tenho um campo (dtAprovacao) do tipo Date/Time. Este campo está com o formato Data abreviada, não é requerido e não é indexado.

    Quando um registro é criado nessa tabela esse campo não é preenchido (ele não requerido). Esse campo fica então com o valor nulo (DBNull). Numa dada condição esse campo é preenchido com uma data através de uma consulta UPDATE armazenada no próprio "banco".

    Acontece que em certas situações preciso esvaziar esse campo. Colocá-lo novamente como nulo (DBNull). Montei então a seguinte consulta do tipo atualização:

    UPDATE tabela SET dtAprovacao = Null WHERE faID=p_faID;

    Bem, quando estou executando a consulta diretamente no Access para efeito de teste funciona perfeitamente.

    No evento click de um ImageButton eu chamo um método de crítica e finalmente na minha DAL tenho o método abaixo para executar aquela consulta:

    Public Sub CancelarAprovacaoDeFuncaoAcessoria(ByVal _faID As Int16)
    
        Dim con As New OleDbConnection(conStr)
        Dim cmd As New OleDbCommand("CancelarAprovacao", con)
        cmd.CommandType = CommandType.StoredProcedure
        cmd.Parameters.AddWithValue("p_faID", _faID)
    
        Try
            con.Open()
            cmd.ExecuteNonQuery()
        Catch ex As Exception
            Throw ex
        Finally
            con.Close()
        End Try
    End Sub
    

    O que está acontecendo é que ao rodar esse método estou recebendo a seguinte exceção:

    "Sequência não foi reconhecida como DateTime válido."

    E outra coisa estranha é que não consigo nem mesmo parar a execução do código em qualquer linha do código. Seja no CodeBehind do evento Click do ImageButton, seja em algum ponto do método na DAL.

    Onde posso estar errando? Por que não consigo debugar?

    Grato pela atenção de todos.

    Paulo Ricardo Ferreira

    quarta-feira, 27 de junho de 2012 16:20