Je me débats actuellement avec une base de données MySQL avec DataSet. Le problème est qu'il utilise beaucoup de mémoire (comme je l'ai trouvé quelque part sur le net, il utilise presque 4 fois plus de mémoire que lorsque vous utilisez DataReader). Ce à quoi je pensais, c'était de créer une fonction qui utiliserait DataReader pour la commande SQL SELECT.
Ce à quoi je pense actuellement est (exemple) :
public void GetData(string name,string surname, string company)
{
string selectCommand="";
selectCommand += "SELECT * FROM thetable ";
if (txtName.Text!="" || txtSurname.Text!="" || txtCompany.Text!="")
selectCommand += "WHERE ";
if (txtName.Text!="")
selectCommand += "name=" + txtName.Text+ " ";
if (txtSurname.Text!="")
selectCommand += "surname=" + txtSurname.Text + " ";
if (txtCompany)
selectCommand += "company=" + txtCompany.Text + " ";
MySqlDataAdapter dataAdapter = new MySqlDataAdapter(selectCommand+";",conn);
///etc...
}
Mais je pense que c'est une mauvaise voie. Tout d'abord, je n'utilise pas de paramètres. Ensuite, cela a l'air un peu sale. Quelqu'un peut-il me suggérer quelque chose ?