Oppure

Loading
27/12/11 13:13
visualrenzo
Carissimi, è da qualche giorno che mi sono arenato in un problema con la sovrascrizione di un record in un database access e non riesco a venirne a capo.
Le istruzioni sono queste.

' strSQL = "SELECT * " & _
' "FROM tbl_Numeri " & "ORDER BY Data"
' RsCodice.Open strSQL, myConnessione, adOpenStatic, adLockBatchOptimistic

DataIns = CDate(Format(Text1.Text, "short Date";))
' ho provato a modificare questa variabile DataIns in tutti i modi
NumEstrazIns = Text3.Text
NumEstraz1 = Text4.Text
'dopo una serie di controlli deve fare questo

strSQL = "UPDATE Tbl_Numeri SET " _
& "Numero = '" & Replace(Text4.Text, "'", "''";) & "' " _
& "WHERE Data = " & CDate(DataIns)

' alla fine scrive questo
myConnessione.Execute strSQL 'scrivo sul file
RsCodice.Close

ho provato anche quest' altro caso
' strSQL = "UPDATE Tbl_Numeri " & _
' "SET Numero = " & NumEstrazIns & ", Colonna1 = '" & NumEstraz1 & "' " & _
' "WHERE Data = '" & DataIns & "'" ' and Numero = " & NumEstrazIns & ""


Se io invece di fare il controllo where sulla data lo faccio sul campo Numero tutto funziona bene.
Allora penso sia un problema di Data.
Nel database il campo Data è formato dat/ora quindi non capisco dove può essere l' errore.
Qualcuno ha avuto mai questo problema ?
aaa
27/12/11 13:23
Le date con i mdb devono essere indicate sempre in formato americano e con i #

Deve essere quindi

"WHERE Data = #" & Format(CDate(Text1.Text), "mm/dd/yyyy";) & "#"
Ultima modifica effettuata da 27/12/11 13:26
27/12/11 14:11
visualrenzo
Hai ragione funziona
Bravo Grazie

e Buon Anno
aaa