Si potrebbe ottimizzare il tutto scrivendo qualcosa di simile:
La query viene chiusa, se necessario; si imposta il testo SQL includendo i parametri che verranno assegnati subito dopo; si provvede ad aprire (eseguire) la query e, nel caso siano presenti record, si imposta l'apposito "flag" e si conclude con la chiusura della query.codice:if Query.Active then Query.Close; Query.SQL.Text := 'SELECT * FROM nometabella WHERE (USERNAME = :USERNAME) AND (PASSWORD = :PASSWORD)'; Query.ParamByName('USERNAME').AsString := UserNameEdit.Text; Query.ParamByName('PASSWORD').AsString := PasswordEdit.Text; Query.Open; UserFound := not Query.Eof; Query.Close;
In realtà, avrebbe più senso eseguire un conteggio dei record piuttosto che selezionare tutti i campi e verificare se la tabella contiene record (che potrebbero essere molti e non sono necessari).
Ciao!![]()

Rispondi quotando