Nisam bio siguran da li da ovaj upit postavim na podforum za dot net ili ovde za MySQL, ali verujem da ce ovde neko znati da mi pomogne, posto je problem brzine, rekao bih u MySQL konektoru.
Imam jednu povecu bazu i potrebno je da sa jednim upitom izvucem oko 100 000 unosa iz nje. E sad problem je sto mi to dosta sporo radi.
string Komanda = @"SELECT ImePrezime, Info1, info2 FROM Ocitavanja WHERE Stanje != 'S'";
try
{
MySQLCom = new MySqlCommand(Komanda, DatabaseConnection);
MySQLCom.CommandTimeout = 3600;
MySqlDR = MySQLCom.ExecuteReader();
}
catch (MySqlException e)
{
DebugIspis("Greska prilikom ocitavanja tabele 'Ocitavanja' \n" + e.ToString(), true);
}
while (MySqlDR.Read())
{
Odgovor = "("+ MySqlDR[0].ToString() + "-" + MySqlDR[1].ToString() + "-" + MySqlDR[2].ToString() + ")" + Odgovor;
}
MySqlDR.Close();
E sad kad je potrebno izvuci samo 5K-6K unosa to dosta dobro radi, ali kako se povecava broj pojava koje treba izvaditi iz tabele tako se ovaj upit sve sporije izvrsava.
E sad palo mi je na pamet 2 resenja a to je:
1.
Ispred svega da stavim for i=1 to BrojPojava/5000
string komanda da promenim u
string Komanda = @"SELECT ImePrezime, Info1, info2 FROM Ocitavanja WHERE Stanje != 'S' LIMIT " + i*5000 +",5000";
2.
Da probam sve da snimim u fajl pa da to iscitam.
... SELECT INTO OUTFILE 'ispis.txt'
Postoji li bolji nacin?
****
< 9 9 > My name
..( o ).. is
. . -- . .MX86251 ?