Witam,
mój problem polega na tym, że nie wiem jak odpytac tabele(TTable) SQL'wym zapytaniem. Mam obiekt TTable gdzie tworze dynamicznie tablice (dane pochadzą z pliku, nie łączę się z żadną bazą danych) pod którą podpinam DataSource i wszystko wyświetlam na DBGrid. Wszystko działa. Jednak zanim wyświetle dane na DBGrid chciałbym SQL'owym zapytaniem zawęzic wynik, np. gdy mam w tabeli 4 kolumny to przy pomocy takiego zapytania "SELECT imie, nazwisko FROM Tablica WHERE ID=1" wyświetlic tylko 2 kolumy dla zadanego ID. Ogólnie chodzi o to żeby móc dac jakiekolwiek zapytanie SQL.
Czy to jest w ogóle możliwe?
Pozdrawiam
Ty chcesz fizycznie schować niepotrzebne kolumny czy chcesz wyświetlić kolumny które cię interesują z danymi, a reszta kolumn ma ukryte dane? Jeśli tak, to poniższy przykład pomoże.
procedure TForm1.Button21Click(Sender: TObject);
begin
with IBQuery1, SQL do begin
Close;
Clear;
Add('SELECT ID_KUR, NAZWISKO FROM OSOBY WHERE ID_KUR = 1');
Open;
end;
end;
Nie, nie chodzi mi o fizyczne ukrycie kolumn. Moze troche zawile napisalem tego posta. Chodzi o to ze nie wiem jak zadac pytanie SQL operujac na danych wczytanych z pliku do obiektu TTable i zeby to pozniej jeszcze wyswietlic wyniki zapytania w DBGrid. Probowalem np tak: TTable->DataSource->TSQLQuery->DataSource->DBGrid i nic z tego (operation not allowed on a unidirectional dataset). Probowalem tez przy wykorzystaniu datasetprovidera ale takze nic. Jak znacie rozwiazanie, bede wdzieczny
SQLa możesz użyć w połączeniu z bazą. Z TTable nie da się odczytać danych SQLem. Poszukaj czegoś jak SQLMemTable
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.