Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

TADOQuery odnosno TADODataSet Filter

[es] :: C/C++ programiranje :: TADOQuery odnosno TADODataSet Filter

[ Pregleda: 1987 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

vula

Član broj: 119166
Poruke: 119
*.teol.net.



Profil

icon TADOQuery odnosno TADODataSet Filter13.01.2007. u 13:13 - pre 210 meseci
Da li je ko koristio TADOQuery odnosno TADODataSet filter?

Prolazi mi ovo:
Code:

TADOCommand* command = new TADOCommand(this);
TADODataSet* dataSet = new TADODataSet(this);

command -> CommandText = "SELECT * FROM STUDENT;";
dataSet -> Recordset = command -> Execute();
 
dataSet -> Filtered = false;
dataSet -> Filter = "SIFRA_STUDENTA = " + cbbSifra -> Text;
dataSet -> Filtered = true;


ali ne i ovo
Code:

command -> CommandText = "SELECT * FROM STUDENT;";
dataSet -> Recordset = command -> Execute();
 
dataSet -> Filtered = false;
dataSet -> Filter = "PREZIME_STUDENTA LIKE '" + cbbPrezime -> Text + "%'";
dataSet -> Filtered = true;

Stvar je u tome sto ja zelim da napravim filter koji ce filterisati Bazu Podataka i raditi na OnChange() event od TComboBox polja i kada korisnik unese jedno slovo prezimena u TComboBox da se isfiltrira Baza Podataka da se TComboBox popuni samo onim prezimenima koja pocinju sa nekim unesenim slovom.
To mi prolazi kada u OnChange() stavim da svaki put poziva Bazu Podataka i da iznova filtrira ovako:
Code:

void TfrmStudent::cbbPrezimeChange(TObject *Sender)
{
 command -> CommandText = "SELECT PREZIME FROM STUDENT 
WHERE PREZIME LIKE '" + cbbPrezime -> Text + "%';";
 dataSet -> Recordset = command -> Execute();

 cbbPrezime -> Items -> Add(dataSet -> Fields -> Field[1] -> AsString);
}

Ali na taj nacin imam veliki broj obracanja Bazi Podataka!?!
To zelim da izbjegnem filtrirajuci TADODataSet!?!

Ono sto mene u sustini interesuje jeste da li se operator LIKE moze postavljati u Filter od TADODataSet? Ili mora samo ,,=''?!
Dakle, nije mi proslo
dataSet -> Filter = "NAZIV_STUDENTA LIKE '" + cbbPrezime -> Text + "%'";

Hvala. Pozdrav
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.dynamic.sbb.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: TADOQuery odnosno TADODataSet Filter13.01.2007. u 13:37 - pre 210 meseci
Zašto ne koristiš TADOQuery i zaboraviš na sve te filter?

Prosto ukucaš u SQL property (TStringList) bilo koji upit i on naprosto radi!

Filer, koliko mi je poznato od ranije ne može da ima cele upite, već samo neka primitivna poređenja
(ako nisu nešto unapređivali), mada ne vidim prednost u odnosu na TADOQuery.



 
Odgovor na temu

vula

Član broj: 119166
Poruke: 119
*.teol.net.



Profil

icon Re: TADOQuery odnosno TADODataSet Filter14.01.2007. u 12:52 - pre 210 meseci
Citat:

Tako mogu da filtriram DataSet?
Meni treba da povucem iz Baze grupu podataka pa to da filtriram po nekom uslovu,
u mom slucaju unosu jednog slova u TComboBox, i da tako isfiltrirano na klijentskoj strani prikazujem.

Tako mogu da filtriram DataSet? Meni treba da povucem iz Baze grupu podataka pa to da filtriram po nekom uslovu, u mom slucaju unosu jednog slova u TComboBox, i da tako isfiltrirano na klijentskoj strani prikazujem.

Hvala X Files po x-ti put, kad x konvergira ka beskonacno. :)



[Ovu poruku je menjao X Files dana 14.01.2007. u 14:26 GMT+1]
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.dynamic.sbb.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: TADOQuery odnosno TADODataSet Filter14.01.2007. u 13:28 - pre 210 meseci
TADOQuery je predviđen da vrati dataset koji je rezultat nekog SQL upita koji opet može
da bude na ma koliko tabela iz baze.

Taj dataset možeš da prikažeš u recimo, DBGridu, pa čak ponekad i da ga naživo menjaš
(LIVE UPDATE) ako za to ima uslova (tj. ako upit obuhvata dovoljno podataka).
 
Odgovor na temu

vula

Član broj: 119166
Poruke: 119
*.teol.net.



Profil

icon Re: TADOQuery odnosno TADODataSet Filter14.01.2007. u 15:08 - pre 210 meseci
Citat:
X Files: TADOQuery je predviđen da vrati dataset koji je rezultat nekog SQL upita koji opet može
da bude na ma koliko tabela iz baze.


To znam. Procitao sam u Help-u. :)

Citat:
X Files: Taj dataset možeš da prikažeš u recimo, DBGridu, pa čak ponekad i da ga naživo menjaš
(LIVE UPDATE) ako za to ima uslova (tj. ako upit obuhvata dovoljno podataka).


To i radim, neke podatke prikazujem u DBGridu a neke ubacujem u Edit, ComboBox...
Cackacu melo na netu i po help-u, mozda nesto iscackam.

Hvala!
 
Odgovor na temu

[es] :: C/C++ programiranje :: TADOQuery odnosno TADODataSet Filter

[ Pregleda: 1987 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.