Delphi 7 i standardowa baza Paradox.
Jak wyjąć z tabeli wiersze gdzie kolumna zawiera ciąg znaków, a tak naprawdę jaki ciąg zastępuje ciąg liter.
Próbowałem
- LIKE '%ABC%' jak w Oracle
- LIKE 'ABC' jak w Accessie
Oba mi nie dzialają :-(
Jesli stosujesz to poprzez TQuery to masz cos takiego
Query1.SQL.Text:='Select * form baza.db WHERE pole like :p0 ';
Query1.Params[0].AsString:='%'+Edit1.text+'%';
Query1.Open;
takie uzycie daje Ci wszystkie pola z bazy w ktorych pole zawiera text w Edi1
jesli dalbys % tylko z przodu to masz konczocy sie na Edit1 a z tylu to zaczynajacy sie od Edit1
Jak jescze jakies pytania do wal smialo........;D
Jeśli używasz BDE+Paradox to % zastępuje dowolną ilość znaków, a _ - jeden znak (zob. http://www.jack1024.private.pl/downloads/download.php?cat=docs&scat=delphi5&f=LocalSQL.pdf.zip).
Dlatego Twoja 1) powinna działać !?!
Odnośnie 2) - W Accessie 2000, symbolem zastępującym dowolną ilość znaków, jest również %, nie - * (może w innych wersjach jest inaczej?).
Zwróć też uwagę na wielkości znaków. W niektórych bazach danych, przy porównywaniu, wielkość znaków jest rozróżniana (Paradox), a w niektórych nie (np. Access 2000).
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.