Non so. Ho provato con un esempio e non sono riuscito a riprodurre l'errore. Ti mando il mio esempio anche se non so se ti serva:
codice:
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim DirectoryCorrente$ = Me.Server.MapPath(".\")
        Dim fname$
        Dim sql$ = "INSERT INTO [FILES] ([FILE],[DATACREAZIONE]) VALUES (?,?)"
        Dim connessione As OleDbConnection
        Dim comando As OleDbCommand
        Dim parametro As OleDbParameter
        Dim transazione As OleDbTransaction

        Try
            connessione = New OleDbConnection(StringaConnessione)
            connessione.Open()
            transazione = connessione.BeginTransaction
            comando = New OleDbCommand
            comando.Connection = connessione
            comando.Transaction = transazione
            comando.CommandText = "DELETE FROM FILES"

            comando.ExecuteNonQuery()

            comando.CommandText = sql

            For Each fname In Directory.GetFiles(DirectoryCorrente)
                Dim fsi As New FileInfo(fname)

                parametro = New OleDbParameter("file", OleDbType.VarChar, 50)
                parametro.Value = fname
                comando.Parameters.Add(parametro)

                parametro = New OleDbParameter("datacreazione", OleDbType.Date)
                parametro.Value = fsi.LastWriteTime
                comando.Parameters.Add(parametro)

                comando.ExecuteNonQuery()
                comando.Parameters.Clear()

            Next

            transazione.Commit()

            Me.DataGrid1.DataSource = j.GetDataTable(StringaConnessione, "SELECT * FROM FILES")
            Me.DataGrid1.DataKeyField = "id"
            Me.DataGrid1.DataBind()

        Catch ex As Exception
            Me.Label1.Text = ex.Message
            transazione.Rollback()
        Finally
            connessione.Close()
        End Try


    End Sub