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

Ima li neko ideju sta se ovde dogadja?

[es] :: Pascal / Delphi / Kylix :: Ima li neko ideju sta se ovde dogadja?

[ Pregleda: 2522 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Bojan Kopanja
Bojan Kopanja
Senior Web Developer, ZeusSoftware
Stara Pazova

Član broj: 6155
Poruke: 507
80.93.229.*

ICQ: 346697685
Sajt: www.zeussoftware.rs


Profil

icon Ima li neko ideju sta se ovde dogadja?08.08.2006. u 16:47 - pre 200 meseci
Napravio sam jednu proceduru za sljanje SQL upita bazi koja mi ne radi bas kako bi trebalo. U stvari kada idem kriz proceduru sa F7 onda mi se izvrsi sve kako treba, a kada predjem preko procedure bez breakpointa onda mi se ne izvrsi...

Evo je procedura:

Code:
procedure IzvrsiSQL(SQLText, ConnStr: String; Param: array of String);
var Query: TADOQuery;
    i: Integer;
begin
  Query:= TADOQuery.Create(nil);
  try
    Query.ConnectionString:= ConnStr;
    Query.Close;
    Query.SQL.Clear;
    for i := 0 to 4 do
    begin
      if Param[i] <> '' then
      begin
        Query.Parameters.CreateParameter('P'+IntToStr(i+1), ftString, pdUnknown, 20, Param[i]);
      end;
    end;
    Query.SQL.Add(SQLText);
    Query.ExecSQL;
  finally
    Query.Free;
  end;
end;


Proceduri prosledim ovako parametre:

Code:
IzvrsiSQL('delete from BAZA where DATUM >= :P1 and DATUM <= :P2;', ADOConnection1.ConnectionString, Parametri);


U promenljivoj Parametri mi se nalaze unapred ucitani parametri.

Svaka pomoc je dobrodosla .
 
Odgovor na temu

badam

Član broj: 78553
Poruke: 97
62.108.111.*



+2 Profil

icon Re: Ima li neko ideju sta se ovde dogadja?08.08.2006. u 17:26 - pre 200 meseci
Opet ja. Pokusaj ovako:

Code:

procedure IzvrsiSQL(SQLText, ConnStr: String; Param: array of String);
var Query: TADOQuery;
    i: Integer;
begin
  Query:= TADOQuery.Create(nil);
  try
    Query.ConnectionString:= ConnStr;
    Query.SQL.Text:=SQLText;
    if length(Param)<>Query.Parameters.Count then
      ShowMessage('Pogresan broj parametara!')
    else
    begin
      for i:=0 to Query.Parameters.Count-1 do
        Query.Parameters[i].Value:=Param[i];
      Query.ExecSQL
    end
  finally
    Query.Free;
  end;
end;

Kod mene radi.
Ne treba da kreiras parametre, da zatvaras query, a sql mozes dodati kao text.
Pozdrav
 
Odgovor na temu

Bojan Kopanja
Bojan Kopanja
Senior Web Developer, ZeusSoftware
Stara Pazova

Član broj: 6155
Poruke: 507
80.93.229.*

ICQ: 346697685
Sajt: www.zeussoftware.rs


Profil

icon Re: Ima li neko ideju sta se ovde dogadja?08.08.2006. u 18:58 - pre 200 meseci
Cekaj malo... Zar ce on samo dodati parametre na osnovu SQL-a? Tako sam i probavao, samo sto mi nesto nije htelo raditi i zato sam onda i presao na dodavanje parametara pre svega pa tek onda da ucitavanje SQL.Text-a.

Probacu ovo, mada ne vidim neki poseban razlog ni da ono moje ne radi... U stvari radi ono, samo sto me zeza to sto sam vec napisao. Kao da se nekad izvrsi, a nekad ne .

Nista, probavam i ovu tvoju varijantu, pa javljam kako je proslo.
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Ima li neko ideju sta se ovde dogadja?

[ Pregleda: 2522 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

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