Visualizza un messaggio singolo
Vecchio 04-02-2010, 14:17   #2 (permalink)
cyberlaundry
Very Important Person

 L'avatar di cyberlaundry

 
626 Messaggi

cyberlaundry con qualche commento positivo ( + 50 )
Diciamo che l'errore è supporre che il database che usi utilizzi il formato data/ora che tu "hai deciso" essere mm/dd/yyyy.
Ci mancano un po' di dati:
- Tipo di "strato" software di connessione (BDE, IBX ecc)
- Tipo di RDBMS
Andando per ipotesi, facciamo finta che qrAttivita sia un componente TQuery.
In questo caso stai usando BDE, che tra mille difetti ha il pregio di adeguarsi da solo al tipo di RDBMS che usi.
Basta però che usi i parametri.
Ad esempio la query

SELECT * FROM BOLLE WHERE DATABOLLA > <una_determinata_data>

deve essere scritta in questo modo, supponendo che qrMiaQuery è un componente TQuery e che la variabile dt: TDateTime sia inizializzata dal programma:

codice:
with qrMiaQuery do
begin
  Active := false;
  SQL.Text := 'SELECT * FROM BOLLE WHERE DATABOLLA > :LAMIADATA'
  ParamByName('LAMIADATA').DataType := ftDate; // Probabilmente non è necessario
  ParamByName('LAMIADATA').AsDate := dt;
  Open;
end;
Se non usi TQuery ma TSQLQuery (IBX) dovrebbe essere uguale.
Con TADOQuery (che però non conosco) dovrebbe esserci qualcosa di paragonabile a ParamByName.

Ciao
__________________
Vienimi a trovare: http://www.cyberlaundry.net

RICORDA
che il
modo migliore per ringraziare chi ti dà supporto è di fare click sull'icona "commenta intervento"
Se risolvi da solo il problema che hai postato, condividi con noi la soluzione. Potrebbe essere utile ad altri.

cyberlaundry non è in linea   Bookmark and Share Rispondi quotando