Gambas-it

Archivi (sola lettura) => Programmazione (Gambas 2) => Topic aperto da: Taurus dei miracoli - 02 Gennaio 2011, 18:05:08

Titolo: [RISOLTO] Problema di date
Inserito da: Taurus dei miracoli - 02 Gennaio 2011, 18:05:08
Ho una query in mysql che è la seguente:

  sql = "select * from calit where data = '" & CDate(DateChooser1.Value) & "';"

La applico al mio database ma non mi restituisce nessun record nonostante sia presente in calit una data uguale a quella corrispondente alla DateChooser1.Value.

Perchè???? ???
Titolo: Re: Problema di date
Inserito da: dex - 02 Gennaio 2011, 20:39:00
ciao

le date sono sempre complicate.
che database usi?
Titolo: Re: Problema di date
Inserito da: fsurfing - 02 Gennaio 2011, 21:13:31
le date in un db vengono salvate in un formato diverso da quello di gambas per cui una query di ricerca diretta come hai scritto tu non funziona,

dovresti inserire nella query il valore della data nello stesso formato utilizzato da database.


nel savataggio dei dati invece se utilizza la sintassi :

es:
hres!data=DateChooser1.Value
gambas si occuma di convertire correttamente il valore data.

ps:

CDate(DateChooser1.Value)  e uguale a scrivere : DateChooser1.Value
Titolo: Re: Problema di date
Inserito da: milio - 02 Gennaio 2011, 21:28:55
Prova cosi':

Codice: sql [Seleziona]
sql = "select * from calit where data = '" & Format(DateChooser1.Value,"yyyy-mm-dd") & "';"
Titolo: Re: Problema di date
Inserito da: Taurus dei miracoli - 02 Gennaio 2011, 22:22:26
io uso un database mysql
ho utilizzato href con la funzione CData per la valorizzazione del campo data e quando faccio un output del valore del campo data mi ritorna un valore tipo mm/dd/yyyy così come se faccio un print della stringa sql il valore è di tipo mm/dd/yyyy

comunque ora provo la soluzione proposta sopra e poi vi dico
Titolo: Re: Problema di date
Inserito da: Taurus dei miracoli - 02 Gennaio 2011, 22:24:19
con la query proposta da milio funziona

Grazie
Titolo: Re: Problema di date
Inserito da: doublemm - 02 Gennaio 2011, 22:53:50
Prova cosi':

Codice: sql [Seleziona]
sql = "select * from calit where data = '" & Format(DateChooser1.Value,"yyyy-mm-dd") & "';"


tanto per curiosità: Serve il ; io non lo metto e funziona
Titolo: Re: [RISOLTO] Problema di date
Inserito da: Taurus dei miracoli - 03 Gennaio 2011, 09:40:09
Per mysql non è indispensabile, ma è buona norma metterlo
sql lo vorrebbe e poichè sql è un linguaggio di query pressochè universale tanto vale imparare ad usarlo correttamente.
Ciao