Beh.. sicuramente potresti evitare di leggere sempre tutti gli utenti del db e poi verificare se esiste o meno quello che cerchi...
Una Select del genere:
"SELECT * FROM utenti WHERE userid='" + usid + "' AND password='" + pass + "'"
(non so se si usano i + anche in VB.NET oppure ci vogliono le &)
In questo modo, se il recordset risultante contiene un record vuol dire che user&pwd sono corrette, altrimenti no.
In questo modo quindi ottimizzi le risorse di sistema evitando richieste inutili al db.
Una cosa: prima di eseguire questa query è molto importante che le due variabili usid e pass vengano modificate in modo che gli apici singoli diventino 2 anziché uno (se presenti):
usid = replace(usid, "'", "''")
pass = replace(pass, "'", "''")
Questo è un problema conosciuto da parecchio tempo.. attenzione quindi!![]()