Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 24 odgovora
  • 5.770 pregleda

Najnovija ↓

Re: Kako dinamicki kreirati polja 22.11.2008. u 13:16 · pre 218 meseci #21
>Želiš da jedno polje čuva redni broj sloga?

Bas to?

>Zavisi od RDBMSa

FireBird baza je u pitanju?
Potpis
Don't worry be happy
Re: Kako dinamicki kreirati polja 23.11.2008. u 15:16 · pre 218 meseci #22
> FireBird baza je u pitanju?

Code:

Create view s_tables_list (
  table_name
) as
Select 
  rdb$relation_name
From 
  rdb$relations
Where 
  rdb$view_blr is null and 
  rdb$relation_name not starting with 'rdb$' and
  rdb$relation_name not starting with 'tmp$'
Group by
  rdb$relation_name;
Potpis
Do not be a help vampire (http://slash7.com/pages/vampires), use the google.

How to ask questions the smart way:
http://www.catb.org/~esr/faqs/smart-questions.html
http://solair.eunet.rs/~fangor...stions/smart-questions.sr.html
Re: Kako dinamicki kreirati polja 23.11.2008. u 16:24 · pre 218 meseci #23
@savkic
HVALA kralju

E sad me muci kako da odredim da li je naziiv jedinstven?
svaka tabela ima 3 polja koja moraju biti jedinstvena:ID,Sifafa,Naziv...prva 2 ssam uspeo da odresim bez greske,a 3. me zeza ...probao sam na sledece nacuine,ali mi puca grsku da ne postoji vrednost za sifru,jer kako ja kapiram on ne uzima da sifra ima vrednost
Code:
1.nacin
var
  SQl,Naziv : String;
begin
  Naziv := DBEdit2.Text;
  sql := 'select * from t_drzave where naziv_drzave = ' + QuotedStr(Naziv);
  sdsUnosIzmena.Close;
  sdsUnosIzmena.DataSet.CommandText := Sql;
  dmMain.SQLConn.StartTransaction(TD);
  sdsUnosIzmena.Open;
  dmMain.SQLConn.Commit(Td);
    if sdsUnosIzmena.RecordCount = 0 then
      begin
        sdsUnosIzmena.Append;
        sdsUnosIzmena.FieldByName('id').AsInteger := sp_Drzava_Gen_Id.Params[0].AsInteger;
        sdsUnosIzmena.FieldByName('sifra_drzave').AsString := DBEdit1.Text;
        sdsUnosIzmena.FieldByName('Naziv_Drzave').AsString := Naziv;
      end;
end;

2.nacin
function KorektanUnos(sds:TSimpleDataSet;Tabela,Polje,Vrednost:String):Boolean;
var
  TD:TTransactionDesc;
  sqlText:String;
begin
      sqlText := 'select * from ' + Tabela + ' where ' + Polje + ' = ' + QuotedStr( Vrednost );

      TD.TransactionID := 3;
      TD.IsolationLevel :=xilREADCOMMITTED;

      sds.Close;
      sds.DataSet.CommandText := sqlText;
      SQLConn.StartTransaction(TD);
      sds.Open;
      SQLConn.Commit(TD);

      if sds.RecordCount = 0 then
        Result := True
      else
        begin
          Result := False;
          ShowMessage('Polje ' + Polje + ' mora imati jedinstvenu vrednost ');
        end;
end;
//pozovem je sa

KorektanUnos(sdsUnosIzmena,'T_DRZAVE','NAZIV_DRZAVE',DBEdit2.Text)


Opet nece ne znam gde gresim?
Funkciju pozovem u dogadjaju Balidation
Potpis
Don't worry be happy
Re: Kako dinamicki kreirati polja 23.11.2008. u 18:35 · pre 218 meseci #24
> E sad me muci kako da odredim da li je naziiv jedinstven?

Napravi unique indekse nad tim poljima.

> svaka tabela ima 3 polja koja moraju biti jedinstvena:ID,Sifafa,Naziv...prva 2 ssam uspeo da odresim bez greske,a 3. me zeza ...probao sam
> na sledece nacuine,ali mi puca grsku da ne postoji vrednost za sifru,jer kako ja kapiram on ne uzima da sifra ima vrednost

Moraš naučiti da debaguješ. Ako ti kaže da ne postoji šifra, pogledaj kako izgleda tekst SQLa koji si izvšio, ako tu nema vrednosti, onda pogledaj odakle si uzeo tu vrednost. Koliko vidim ti koristiš DBEdit.Text i tu može biti problem, pre svega gotovo nikada nema razloga da se radi direktno sa DBEdit kontrolom, već sa poljem dataseta sa kojim je taj DBEdit povezan.
Potpis
Do not be a help vampire (http://slash7.com/pages/vampires), use the google.

How to ask questions the smart way:
http://www.catb.org/~esr/faqs/smart-questions.html
http://solair.eunet.rs/~fangor...stions/smart-questions.sr.html
Re: Kako dinamicki kreirati polja 23.11.2008. u 19:03 · pre 218 meseci #25
>Napravi unique indekse nad tim poljima.

To sam uradio na serverskoj strani

Ma ok je sqltext , ali kad uzmem vrednost iz dbedi2 vrednost iz dbedit1 se brise,to mi nije jasno?
Probao sam i sa DataSet kontrolom,ali nece
Umesto DBEDit koristio sam sdsUnosIzmena.FieldByName('Naziv_Drzave').AsString i opet nece?
Potpis
Don't worry be happy
Odgovori
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme