[CF][C#] Comment optimiser mes requêtes avec SqlCE ?
Salut,
Je voudrais votre avis sur le process suivant qui me paraît lent et qui au bout d'un nombre de code lus important commence à se faire ressentir.
1. Lecture de code barre avec un lecteur
2. Avant intégration dans la table, vérifier si le code n'existe pas déjà
3. S'il n'existe pas, on l'intègre
Voilà le code :
Code:
1 2 3 4 5 6 7 8 9 10
|
request = "SELECT CAB_COLIS FROM COLIS WHERE CAB_COLIS='"
+ code + "'";
if(clsD.searchData(request) == false)
{
// Display the code in a textbox
// and add the barcode in the table
}
else
{ // Display an error message} |
La fonction appelée étant la suivante :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
public bool searchData(string req)
{
bool status = false;
SqlCeConnection connDB = new SqlCeConnection(strConn);
SqlCeCommand cmndDB = new SqlCeCommand(req, connDB);
SqlCeDataReader drdrDB;
try
{
connDB.Open();
drdrDB = cmndDB.ExecuteReader();
while ( drdrDB.Read() )
{ status = true;}
drdrDB.Close();
connDB.Close();
}
catch(Exception ex)
{
MessageBox.Show(ex.ToString(), "Erreur",
System.Windows.Forms.MessageBoxButtons.OK,
System.Windows.Forms.MessageBoxIcon.Hand,
System.Windows.Forms.MessageBoxDefaultButton.Button2);
}
return status;
} |
Voilà merci pour toute suggestion pour ce sujet.