[ rankez @ 23.05.2006. 08:45 ] @
Kako da definisem SQL upit a da rezultat budu svi stringovi koji pocinju sa odredjenim podstringom.
(analogija sa dir komandom iz DOS-a kada hocu da izlistam sve falove koji POCINJU sa nekim stringom, npr: dir string*)
Probao sam sa:
Code:

   with QueryGreed do
   begin
      Close;
      SQL.Clear;
      SQL.Add('SELECT * FROM Tabela2');
      SQL.Add('WHERE Sifra='+QuotedStr(DBComboOpstina.Text)+'*');
      Open;
   end;

ali to ocigledno ne radi:((

Gde mogu da nadjem sintaksu za SQL komande koje figurisu u okviru ADOQuery-ja? Da li su te komande univerzalne i za upotrebu SQL-a van Delphija?
p.s. nisam uspeo nesto slicno da nadjem u okviru delphijevog help menija (Delphi 6)

Kako radi svojstvo FILTER kod ADOQueryja? (primer)
Da li ono ima istu funkciju kao i konstrukcija u ADOQuery SQL-u sa naredbom WHERE? Ako je to isto kada se upotrebljava prvi a kada drugi slucaj (prednosti i mane)?

Pozdrav.
[ dogriz @ 23.05.2006. 09:19 ] @
imas 2 greske u kodu: prva greska je sto po ovom sto si ti napisao dzoker znak stoji izvan quotedStringa, a druga je sto dzoker znak u SQL-u nije *, vec % (menja proizvoljan broj znakova) i _ (menja jedan znak).
Znaci promeni upit da dobijes nesto nalik ovome - 'Pe%' ili 'S__'...
Npr. QuotedStr(DBComboOpstina.Text+'%')

sad videh i ovo: umesto Sifra=..., stavi Sifra LIKE ...
[ nikola.j @ 23.05.2006. 09:21 ] @
>

Odgovor na ovo pitanje zavisi uveliko od izabrane baze podataka, a ne
ADOQuery-ja, ali probaj sintaksu:

select * from TABELA where string LIKE 'string%'
[ rankez @ 23.05.2006. 10:52 ] @
Hvala vam, sada radi.

Kakvo je stanje sa druga dva pitanja, narocito gde mogu da nadjem sintaksu SQL naredbi za ADOQuery?
[ nikola.j @ 23.05.2006. 11:19 ] @
>

Ne mozes za ADOQuery.

Bar mislim da ne mozes :)
Ko ce ga znati, na internetu moze svasta da se nadje :)

Treba ti SQL referenca za bazu koju koristis. Ti treba da nam kazes da li je to
Access, MS SQL, IB/FB, MySQL,... pa ce se vec naci neko sa odgovarajucim uputstvom
[ rankez @ 23.05.2006. 11:26 ] @
Access baza
[ Miloš Baić @ 23.05.2006. 11:35 ] @
SQL naredbe su univerzalne, sto se njih tice, a nekih manjih izmena ima u zavisnosti od programskog alata.

Svojstvo filter bi mogao odraditi recimo ovako:
Code:

var
  filter:String;
begin   
  filter:='';
  qOsoba.Close;
  qOsoba.SQL.Clear;
  qOsoba.SQL.Add('SELECT * FROM Naziv_Tabele');
    if Edit.Text<>'' then
       if filter='' then
          filter:='WHERE JMBG LIKE ''' + Edit.Text + '%'' '
       else
          filter:='WHERE JMBG LIKE ''' + Edit.Text + '%'' ';
    qOsoba.SQL.Add(filter);
    qOsoba.Open;
end;