Nie wykonuje się zapytanie SQL :| (TQuery)

0

Już się męczę jakiś czas i nie mam siły.

Mam bazę danych(dBase) i standardowe komponenty: TTable, TDataSource, TDBGrid no i oczywiście TQuery. Wszystko ładnie połączone.

Chcę sobie posortować tą bazę według kolumny jakiejś, a konkretniej pole nazywa się BRANZA.

Więc robię tak, jak jest w helpie(no i sprawdzam dla siebie rowsAffected):

SQL.Close;
SQL.SQL.Clear;
SQL.SQL.Add('Select * from baza order by BRANZA');
SQL.ExecSQL;
showMessage('Rows Affected: '+intToStr(sql.RowsAffected));

Za każdym razem pojawia się rowsAffected równe 0.
A zawartość dbGrid nadal nie jest posortowana.

O co mu chodzi? Co znowu robię nie tak? Co mam jeszcze zrobić?

Mój system to WIN98SE, baza typu dBase.

0

Spróbuj stworzyć index do pola, po którym chcesz posortować tabelę dBase. Powinno pomóc.

0

Spróbuj stworzyć index do pola, po którym chcesz posortować tabelę dBase. Powinno pomóc.

A czy mógłbyś powiedzieć, jak zrobić ten index? Bo z SQLa nie jestem najlepszy :/
No i oczywiście jak go usunąć(bo użytkownik ma opcję sortowania po kilku polach)

0

Indeksy tworzysz w Borland Database Desktop jak projektujesz tabelę.

0

Indeksy tworzysz w Borland Database Desktop jak projektujesz tabelę.

OK, ale z tego co wiem, to w SQL'u jest coś takiego jak Create Index. Ale tylko tyle wiem :/

Poza tym, z tego, co zostało napisane wyżej wynika, że jak chcę sortować po BRANZA, to mam ustawić jako index właśnie to pole. Ale użytkownik ma mieć możliwość sortowania raz po BRANZA, a innym razem po innym polu. Więc musiałbym mieć możliwość ustawiania indexów i ich kasowania, jesli logicznie rozumuję.

1 użytkowników online, w tym zalogowanych: 0, gości: 1