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

KOpiranje podataka iz tabele firebird baze

[es] :: Pascal / Delphi / Kylix :: KOpiranje podataka iz tabele firebird baze

Strane: 1 2

[ Pregleda: 5714 | Odgovora: 22 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

lucky666

Član broj: 183847
Poruke: 31
91.150.97.*



Profil

icon KOpiranje podataka iz tabele firebird baze16.06.2008. u 11:57 - pre 192 meseci
Posto nisam nasao odgovor za moje pitnje na ranijim temama postavicu jos jednu u nizu mojih glupih tema...
Napravio sam bazu koja ima strukturu kao employee.gdb baza koja se isporucuje uz \Delphi...Interesuje me kako mogu putem koda da kopiram podatke iz jedne od tabela baze emloyee u istu tabelu moje baze?
Extra dodatak sam mislio da napravim ...napunim combo svim tabelama baze i klikom na neku od tabela podaci se pojavljuju u gridu,klikom na dugme kopiraju se....?
Kako?pomocu kojih komponenti?kod?Nista ne znam samo znam sta zelim da uradim?
Svaka pomoc imi je dobro dosla!
HVALAsbvvim buducim instruktorima
 
Odgovor na temu

_deran_

Član broj: 69493
Poruke: 252
77.46.158.*



+1 Profil

icon Re: KOpiranje podataka iz tabele firebird baze16.06.2008. u 15:44 - pre 192 meseci
pogledaj http://fbexport.sourceforge.net/
 
Odgovor na temu

lucky666

Član broj: 183847
Poruke: 31
79.101.163.*



Profil

icon Re: KOpiranje podataka iz tabele firebird baze16.06.2008. u 16:13 - pre 192 meseci
@deron Hvala,ali nasao sam fajl fbcopy-1.52 koji nemogu nigde da otvorim.
Ako moze neka konkretnija pomoc?
ZA pocetak me interesuje da li sam na pravom putu,kada mislim da se kopiranje izmedju FB baza vrsi uz pomoc komponente BetchMove?jer ona ima 2 svojstva koja (po mom misljenju) imaju ulogu odredista i izvora destinacion i source?ili gresim? ili je to mozda CRBatchMove?
 
Odgovor na temu

lucky666

Član broj: 183847
Poruke: 31
79.101.243.*



Profil

icon Re: KOpiranje podataka iz tabele firebird baze17.06.2008. u 00:06 - pre 192 meseci
eVo i nekakve verzije koda procedure koju sam napravio za kopiranje podataka medju tabelama.Ne pokazuje gresku,ali ne radi nista.NEznam gde gresim?
Code:

procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
begin
//SqlTable 1 je izvorna tabela,a SqlTable 2 je odredisna tabela
for i:=0 to SQLTable1.FieldCount-1 do
begin
SQLTable2.Fields[i]:=SQLTable1.Fields[i];
SQLTable1.Next;
end;
end;
 
Odgovor na temu

Vladica Savić
Software Developer
Toronto, Canada

Član broj: 26699
Poruke: 654
Via: [es] mailing liste



+5 Profil

icon Re: KOpiranje podataka iz tabele firebird baze17.06.2008. u 12:12 - pre 192 meseci
U sustini mozes da posmatras kao matricu, pustis dve for petlje, koja ce da vrti poziciju vrsta, drugu kolona, i onda uzmes u neku promenjivu vrednost polja na poziciji polje(i,j) iz tabele odakle kopiras, i upises u polje na istom tom mestu u drugoj tabeli u polje(i,j) i to je to :)
 
Odgovor na temu

Vladica Savić
Software Developer
Toronto, Canada

Član broj: 26699
Poruke: 654
Via: [es] mailing liste



+5 Profil

icon Re: KOpiranje podataka iz tabele firebird baze17.06.2008. u 12:24 - pre 192 meseci
Baci pogled i na ovako nesto
 
Odgovor na temu

lucky666

Član broj: 183847
Poruke: 31
93.86.46.*



Profil

icon Re: KOpiranje podataka iz tabele firebird baze17.06.2008. u 14:10 - pre 192 meseci
@VladaLe Ok neke greske mi pokazuje nikako da se izborim sa njiima
Ma mnogo je ono zakoplikovano moze to malo prostije
 
Odgovor na temu

lucky666

Član broj: 183847
Poruke: 31
93.86.46.*



Profil

icon Re: KOpiranje podataka iz tabele firebird baze17.06.2008. u 14:21 - pre 192 meseci
Kada prekucam onaj kod prebaci mi se samo polje sa indeksom 0,a nepamti mi izmenu?
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: KOpiranje podataka iz tabele firebird baze17.06.2008. u 17:57 - pre 192 meseci
BatchMove zaboravi, ona radi preko BDEa. Tebi treba jedan kveri koji će učitati podatke i drugi koji će vršiti upis. Otprilike ovako (pišem online pa kod sasvim sigurno nije tačan, ali će ti dati ideju):

Code:

var 
  Sel, Ins: TIBQuery;
begin
  Sel := TIBQuery.Create(nil);
  Ins := TIBQuery.Crete(nil);
  // Sada treba povezati ove dve kveri komponente sa transaction i database komponentama

  Sel.SQL.TEXT := 'SELECT ID, IME, PREZIME FROM TABELA1';
  Ins.SQL.Text := 'INSERT INTO TABELA2 (ID, IME, PREZIME) VALUES (:Id, :Ime, :Prezime)';
  Ins.Prepare;

  Sel.Open;
  while not Sel.Eof do
  begin
    Ins.Params[0] := Sel.FieldByName('ID').AsInteger;
    Ins.Params[1] := Sel.FieldByName('IME').AsString;
    Ins.Params[2] := Sel.FieldByName('PREZIME').AsString;
    Ins.ExecSQL;
    Sel.Next;
  end;

  // Sada treba komitovati transakciju sa kojom je bila povezana Ins tabela.
end;

 
Odgovor na temu

Vladica Savić
Software Developer
Toronto, Canada

Član broj: 26699
Poruke: 654



+5 Profil

icon Re: KOpiranje podataka iz tabele firebird baze17.06.2008. u 19:55 - pre 192 meseci
Eto, savkic solve the problem once again :)
 
Odgovor na temu

lucky666

Član broj: 183847
Poruke: 31
93.86.36.*



Profil

icon Re: KOpiranje podataka iz tabele firebird baze18.06.2008. u 00:28 - pre 192 meseci
@savkic
@VladaLe
HVALA VAM EXTRA!!!!
Opet nece nisam razumeo (ne znam) kako da se komituje transakcija?
Onaj kod sto ni je Vlada napisao da pogledam ubaci samo 1. polje sa indeksom 0,a kada napisem
Code:

Sour.Next;

Pokazuje greske i blokira
Code:

//sqlQuery1 je destinacija,a SqlQuery2 sors
SQLQuery2.SQL.Add('insert into country (country,currency)values(:country,:currency)');
SQLQuery1.Open;
while not SQLQuery1.Eof do
begin
SQLQuery2.Params[0]:=SQLQuery1.ParamByName('country');
SQLQuery2.Params[1]:=SQLQuery1.ParamByName('currency');
SQLQuery2.ExecSQL;
SQLQuery1.Next;
end;
//a u kveriju1 sam stavio Sql('select * from country')

Pokazuje neku gresku 0 zaustavlja akciju
NE razumem gde gresim?
Ne razumem jel sam ja glup ili je ovo samo meni tesko!!!!
Aj ako Vam nije problem probajte u Delphiju kao to moze da se odradi pa mi pustite sors kod
Znam da sam vise svima dosadio sa glupim pitaanjima,ali ne znam , a niko se nije naucen rodio,PLEASE
THANK YOU!!!!!!!!!!!!!!!!!!!!!!
 
Odgovor na temu

chachka
Srđan Mijatov
Programer
BUS Computers
Kikinda

Član broj: 53780
Poruke: 576
*.ADSL.neobee.net.

Sajt: www.baze-podataka.net


+4 Profil

icon Re: KOpiranje podataka iz tabele firebird baze18.06.2008. u 00:38 - pre 192 meseci
Savkić ti je lepo napisao da polje čitaš sa FieldByName:
Code:
// savkic
Ins.Params[0] := Sel.FieldByName('ID').AsInteger;

a ti si pogrešno upotrebio ParamByName:
Code:
// lucky666
SQLQuery2.Params[0]:=SQLQuery1.ParamByName('country');

"The best code is no code at all."
- Zidar (ES član)
"Biggest obstacle to learning
SQL is unlearning procedural
programming."
- Joe
Celko
"Minimize code, maximize data."
- A. Neil Pappalardo
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: KOpiranje podataka iz tabele firebird baze18.06.2008. u 08:18 - pre 192 meseci
> Pokazuje neku gresku 0 zaustavlja akciju

Moraš naučiti da budeš precizan, ako ne radi šta je to što ne radi, ako dobijaš grešku koju grešku dobijaš (dovoljno je da prekucaš tekst, ne treba slati sliku exceptiona).

> Aj ako Vam nije problem probajte u Delphiju kao to moze da se odradi pa mi pustite sors kod
> Znam da sam vise svima dosadio sa glupim pitaanjima,ali ne znam , a niko se nije naucen rodio,PLEASE

Moje je čvrsto uverenje da početnici moraju sami da otkrivaju, ako ti sad neko napiše gotov kod učiniće ti medveđu uslugu, u osnovi ti ništa nećeš naučiti. Međutim, ako ti provedeš dan, dva pa i nedelju na ovome jednom delu, kada sam uradiš shvatićeš mnogo toga. Samo moraš imati strpljenja i čitati help.
Takođe, knjiga je za tebe obavezna, bilo je ranije više puta reči o knjigama za početnike pa potraži te ranije teme.
BTW, pretpostavljam da ti ovo kopiranje radiš kako bi nešto naučio, moj ti je savet da uradiš nešto konkretno, npr. program za DVD klub, biblioteku i sl.
 
Odgovor na temu

lucky666

Član broj: 183847
Poruke: 31
93.86.51.*



Profil

icon Re: KOpiranje podataka iz tabele firebird baze18.06.2008. u 11:10 - pre 192 meseci
@chachka
kada napisem ovaj kod koji je savkic dao pojavi se greska
Incompatible types 'TParam' and 'String'
>Moje je čvrsto uverenje da početnici moraju sami da otkrivaju, ako ti sad neko napiše gotov kod učiniće ti medveđu uslugu, u osnovi ti ništa nećeš naučiti. Međutim, ako ti provedeš dan, dva pa i nedelju na ovome jednom delu, kada sam uradiš shvatićeš mnogo toga. Samo moraš imati strpljenja i čitati help.
Takođe, knjiga je za tebe obavezna, bilo je ranije više puta reči o knjigama za početnike pa potraži te ranije teme.
@savkic
Ok je to sto me tako savetujes,ali ovaj kod koji meni treba nema u knjizi pa sam ja zato mislio da mi neko postavi kod koji radi,a ja bi ga primenio na sve tabele baze pa bi tako naucio,a ne dobio"medvedju uslugu".Da hocu medvedju uslugu bi uzeo navugator i za 10ak minuta ineo podatke!
>BTW, pretpostavljam da ti ovo kopiranje radiš kako bi nešto naučio, moj ti je savet da uradiš nešto konkretno, npr. program za DVD klub, biblioteku i sl.
Dobro pretpostavljas.Kopiram podatke da bi naucio,a rado bih napravio neku svoju bazu,medjutim pravljenje baza orentaciono znam,a radije bih to vreme utrosio u povezivanju Delphija i baze!
Trazim sors procedure koja je isprobana u Delphiju da bi je primenio na sve tabele ,i tako uvezbavao!
 
Odgovor na temu

chachka
Srđan Mijatov
Programer
BUS Computers
Kikinda

Član broj: 53780
Poruke: 576
79.101.223.*

Sajt: www.baze-podataka.net


+4 Profil

icon Re: KOpiranje podataka iz tabele firebird baze18.06.2008. u 11:48 - pre 192 meseci
Citat:
lucky666: kada napisem ovaj kod koji je savkic dao pojavi se greska
Incompatible types 'TParam' and 'String'

Tako je, ali ti je Savkić pre koda lepo napisao:
Citat:
savkic: pišem online pa kod sasvim sigurno nije tačan, ali će ti dati ideju
I da ponovim ključne stvari "nije tačan" i "dati ideju". I zaista kod nije tačan, ali se upotreba TParam i TField i TString nalazi u SVAKOJ knjizi za Delphi koja je namenjena početničkom nivou.

Evo zato i od mene savet koji se često može pročitati po ovim forumima - Knjigu u šake! Nažalost koliko god puta da se ovaj savet ponavlja, još ima ljudi koji ga smatraju suvišnim, komplikovanim i nečim što je gubljenje vremena. Ko je još lud i ima vremena da čita 50 strana uvoda? Daj odmah da se prave programi za NASA-u!


Citat:
lucky666: ... ali ovaj kod koji meni treba nema u knjizi pa sam ja zato mislio da mi neko postavi kod koji radi...

Knjige pokrivaju samo uopštene stvari o programiranju, daju smernice i metodologije, daju ideje i načine kako se primenjuju alati.

Pri bavljenju programiranjem ćeš se sresti sa hiljadama problema čija rešenja nisu zapisana u knjigama! Na kraju krajeva, da je sve zapisano u knjigama, nebismo više imali šta da radimo :)

Programiranje nije puko prepisivanje iz knjige, kao što to nije ni jedna oblast ljudskog rada. U tome se ljudi razlikuju od mrava, mravlji posao je zapisan u nekoj njihovoj svetoj knjizi gena i oni se po njoj ponašaju i rade. Kao što sam već rekao - posao programiranja nije zapisan u knjigama!

Programiranje se sastoji u mogućnosti da se rešenje problem sagleda i razloži na bazne korake, koji se onda povezuju u složenije postupke koji na kraju dovode do rešenja. Glavni alat u programiranju je LOGIKA!

Citat:
lucky666: Trazim sors procedure koja je isprobana u Delphiju da bi je primenio na sve tabele ,i tako uvezbavao!

Počni da razmišljaš kako da rešiš problem samostalno, a ne da uvežbavaš prepisivanje tuđeg koda! Tolkin nikada nebi napisao remek knjigu "Gospodar prstenova" da je uvežbavao prepisivanje Šekspirovih dela!

[Ovu poruku je menjao chachka dana 18.06.2008. u 13:01 GMT+1]
"The best code is no code at all."
- Zidar (ES član)
"Biggest obstacle to learning
SQL is unlearning procedural
programming."
- Joe
Celko
"Minimize code, maximize data."
- A. Neil Pappalardo
 
Odgovor na temu

lucky666

Član broj: 183847
Poruke: 31
93.86.51.*



Profil

icon Re: KOpiranje podataka iz tabele firebird baze18.06.2008. u 12:32 - pre 192 meseci
Svi ti saveti su sper,daleko od toga da sam protivnik citanja knjiga,citam ih.
Za ovaj problem ja imam iddeeju.Radi se preko petlje ,treba mi izvorni i odredisni skup podataka,....ali ne znam kako da je sprovedem u delo,pa za ovih par dana sam napisao toliko koda da bi k njiga u kojoj bi se on ovjavio bila oko2000 strana,a resenja nema,i ne znam kako cu do njega doci....
A ja tako najbolje ucim prepisivajuci kodove i menjajuci ih na svoj nacin...
Pa pre 7 dana sam stavio temu u ib/fb nisam pojma imao da pisemm baze u medjuvrenu sam napisao 2 prepisane i jednu svioju kopiju employee.gdb baze.Slazem se da nije cilj prepisivati,ali kada jednom vidim sta i kako se ispravno radi nije tesko mozgati i prepravljati.....
Proramiranje ti je kao matematika kada si ucio sabiranje da ti niko nije rekao da je 2+2=4 da si ti mozgao i dolazio do zakljucka da je 2+2=5 nikada ne bi znao mnozenjeZnam ja da je svrha programiranja logika i mozak ali ako nemas pravilnu logiku aniko ti ne pomogne dzabe ti od mozganja vrtis se u beskonacnoj petlji problema a kraj se ne vidi
A dobro ako je taj sors toliko "tesko"napisati da radi...
 
Odgovor na temu

lucky666

Član broj: 183847
Poruke: 31
93.86.51.*



Profil

icon Re: KOpiranje podataka iz tabele firebird baze18.06.2008. u 13:03 - pre 192 meseci
Citat:
Code:
 @savkic
var 
  Sel, Ins: TIBQuery;
begin
  Sel := TIBQuery.Create(nil);
  Ins := TIBQuery.Crete(nil);
  // Sada treba povezati ove dve kveri komponente sa transaction i database komponentama

  Sel.SQL.TEXT := 'SELECT ID, IME, PREZIME FROM TABELA1';
  Ins.SQL.Text := 'INSERT INTO TABELA2 (ID, IME, PREZIME) VALUES (:Id, :Ime, :Prezime)';
  Ins.Prepare;

  Sel.Open;
  while not Sel.Eof do
  begin
    Ins.Params[0] := Sel.FieldByName('ID').AsInteger;
    Ins.Params[1] := Sel.FieldByName('IME').AsString;
    Ins.Params[2] := Sel.FieldByName('PREZIME').AsString;
    Ins.ExecSQL;
    Sel.Next;
  end;

  // Sada treba komitovati transakciju sa kojom je bila povezana Ins tabela.
end;


iz koda koji si dao dolazi moj zakljucak dda se radi sa Interbase komponentama,ali moja baza je pisana u firebird ,ima ekstenziju .fdb pa me interesuje neka pomoc kao bi mogao da uradi kopiranje uz pomoc DbExpresss komponenti?
 
Odgovor na temu

chachka
Srđan Mijatov
Programer
BUS Computers
Kikinda

Član broj: 53780
Poruke: 576
79.101.223.*

Sajt: www.baze-podataka.net


+4 Profil

icon Re: KOpiranje podataka iz tabele firebird baze18.06.2008. u 13:12 - pre 192 meseci
Citat:
lucky666: ... pa za ovih par dana sam napisao toliko koda da bi k njiga u kojoj bi se on ovjavio bila oko2000 strana,a resenja nema,i ne znam kako cu do njega doci....

Verujem ti ja, ali da li znaš za jednu anegdotu sa svetskim prvakom u šahu Jose Raul Capablanca-om?

Jednom prilikom su ga pitali koliko poteza vidi unapred. Odgovorio je: Jedan, ali najbolji!


"The best code is no code at all."
- Zidar (ES član)
"Biggest obstacle to learning
SQL is unlearning procedural
programming."
- Joe
Celko
"Minimize code, maximize data."
- A. Neil Pappalardo
 
Odgovor na temu

lucky666

Član broj: 183847
Poruke: 31
93.86.51.*



Profil

icon Re: KOpiranje podataka iz tabele firebird baze18.06.2008. u 14:36 - pre 192 meseci
Zanimljiva anekdota
Nego kako ja da resim problem?
Jel moze preko Dbexpress?
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: KOpiranje podataka iz tabele firebird baze18.06.2008. u 16:18 - pre 192 meseci
> Verujem ti ja, ali da li znaš za jednu anegdotu sa svetskim prvakom u šahu Jose Raul Capablanca-om?
> Jednom prilikom su ga pitali koliko poteza vidi unapred. Odgovorio je: Jedan, ali najbolji!

Meni je u glavi:

Pošto je neki anonimus pobedio poznatog šahistu (možda i Kapablanku), pitali ga koliko poteza vidi unapred,
"jedan"
a Vi, "pa tako devet, deset".
Kako to da neko ko vidi samo jedan potez pobedi onoga ko vidi deset? "Da, ali ja vidim najbolji potez!" odgovori anonimus.

@lucky
> iz koda koji si dao dolazi moj zakljucak dda se radi sa Interbase komponentama,ali moja baza je pisana u firebird ,ima ekstenziju .fdb pa
> me interesuje neka pomoc kao bi mogao da uradi kopiranje uz pomoc DbExpresss komponenti?

IBX radi i sa FB bazama. Kako raditi sa DBX potraži u ranijim porukama. Savet koji ti mogu dati je pogledaj Params u helpu i pogledaj Fields u helpu. I naravno pogledaj poglavlje o bazama, sasvim sigurno sadrži deo o parametrima i poljima.
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: KOpiranje podataka iz tabele firebird baze

Strane: 1 2

[ Pregleda: 5714 | Odgovora: 22 ] > FB > Twit

Postavi temu Odgovori

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