A parte gli apostrofi, che è una delle insidie sempre dietro gli angoli, torniamo per un attimo alle date.Originariamente inviato da Pepe27
Si appena posso provo a fare come mi dici tu e ho anche dato un occhiata a quanto suggerisce Cibra, salvato e appena posso approfondisco.
Poi faccio sapere
Acci...vedi agli apostrofi non ci avevo pensato.
Vi faccio sapere
Grazie
Il problema è proprio il formato, come indicato nel mio articolo.
Lo dimostra proprio il fatto che con la data di oggi non li trovi, mentre con le date precedenti si.
La data interna di un database Access è il formato americano (ma vale un po' per tutti i database) solo che a differenza di altri database in Access non puoi modificare tale impostazione, quindi ti devi adeguare tu.
Ora, considerando che il JET vuole il formato americano MM/DD/YYYY, quando gli passi una data non formattata correttamente, lui tenta di capire ed interpretare la data, ma ovviamente non gli riesce sempre, o meglio non gli riesce nei casi in cui la data può avere due interpretazioni.
Se tu gli passi la data di ieri: 31/03/2011 il JET capisce che non esiste un mese 31 , dato che la data NON è ambigua è può solo essere interpretata come 31 marzo 2011.
Invece La data di oggi, 01/04/2011, è ambigua perchè può essere valida in entrambi i formati (italiano e americano), infatti entrambe sono date valide e potrebbe essere interpretata anche come 04/01/2011, ed è quello che fa il JET.
Se gli passi 01/04/2011 lui la ritiene valida e la usa nel formato predefinito quindi la considera come 04 gennaio 2011 (MM/DD/YYYY).
Ecco perchè è più semplice, flessibile e consigliato usare un Command: tutti questi problemi sono prevenuti a monte, idem per gli apostrofi e per i cancelletti nelle date.
Non vorrei essere pedante, ma ti consiglio vivamente di adottare in futuro i Command, questo ti aiuterà in seguito anche per il NET in cui, di default, vengono utilizzati solo i Command (OleDbCommand, SqlCommand, OracleCommand, ecc....).
Oltretutto con la routine SetAdoParameter() che trovi nel mio progetto di esempio, impostare Command e relativi parametri è di una semplicità disarmante.![]()
![]()