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

Putanja ka firebird bazi smestena u ini fajl?

[es] :: Pascal / Delphi / Kylix :: Putanja ka firebird bazi smestena u ini fajl?

[ Pregleda: 3465 | Odgovora: 14 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

mr.zhile
Ivan ZHILE
C# developer

Član broj: 185721
Poruke: 249
79.101.226.*



+2 Profil

icon Putanja ka firebird bazi smestena u ini fajl?12.07.2008. u 13:37 - pre 191 meseci
Kako da napravim ini fajl u kji bi se upisala putanja do baze?
Fajl bi trevao da cuva putanju i da se priilikom svakog pokretanja program nakaci na bazu!
Moj ii fajl izgledaa ovako:
Code:

[baza]
put="C:\Program Files\Common Files\Borland Shared\Data\EMPLOYEE.GDB"

Ukapirao sam da treba da se smesti u dogadjaj onCreate DataModul u kom se nalaze komponente zaa manipulaciju podacima,ali ne znam kako bi trebalo da izgleda ta procedura?
HVALA
Don't worry be happy
 
Odgovor na temu

rambo
Dejan Petković
Beograd

Član broj: 6095
Poruke: 190
*.eunet.yu.



+6 Profil

icon Re: Putanja ka firebird bazi smestena u ini fajl?12.07.2008. u 17:46 - pre 191 meseci
Ako baš moraš da negde imaš INI fajl u kome imaš zabeleženu putanju do FB baze, onda koristi TIniFile klasu.

Ali, moja ti je preporuka da iskoristiš ugrađeni mehanizam za Aliase. U folderu u kome ti je instaliran FB server imaš fajl aliases.conf u kome možeš da navedeš ime aliasa i putanju do baze. Onda u svom programu podesiš konekciju tako da se veže na taj alias a ne direktno na fajl baze. Na primer, ako ti je baza u C:\Program Files\Moj program\Podaci\MojaBaza.fdb, onda napraviš alias
Code:

MOJABAZA=C:\Program Files\Moj program\Podaci\MojaBaza.fdb

i u svom programu podesiš konekciju na taj alias (MOJABAZA) a ne na direktnu putanju do fajla. Ako ručno navodiš konekcioni string do baze, onda prvo staviš ime ili IP adresu računara na kome ti je FB server pa onda alias željene baze. Na primer, SERVER:MOJABAZA ili 192.168.0.1:MOJABAZA.

Napomena: Aliasi se podešavaju na serveru i podrazumeva se da se .FDB fajlovi takođe nalaze na serveru (što je i logično ako želiš normalan višekorisnički pristup bazi).

Varijanta sa aliasima je mnogo bolja i fleksibilnija jer je pre svega sigurna (ne navode se nikakve putanje u konekciji), nezavisna od platforme na kojoj se nalazi FB server, i po potrebi može lako da se promeni da pokazuje na neko drugo mesto bez potrebe da se išta menja u aplikaciji.

Inače, mnogo je bolje sve parametre aplikacije smeštati u Registry nego u INI fajl. Za to može da se koristi TReistry klasa.

"There is a theory which states that if ever anybody discovers exactly what the
Universe is for and why it is here, it will instantly disappear and be replaced by
something even more bizarre and inexplicable. There is another theory which states
that this has already happened."
-- Douglas Adams
 
Odgovor na temu

schild
Dejan Šild
TopCode Software
Subotica

Član broj: 59888
Poruke: 138
213.240.53.*

Sajt: www.topcode.rs


+2 Profil

icon Re: Putanja ka firebird bazi smestena u ini fajl?14.07.2008. u 07:40 - pre 191 meseci
Citat:
rambo: Ako baš moraš da negde imaš INI fajl u kome imaš zabeleženu putanju do FB baze, onda koristi TIniFile klasu. Ali, moja ti je preporuka da iskoristiš ugrađeni mehanizam za Aliase.
Inače, mnogo je bolje sve parametre aplikacije smeštati u Registry nego u INI fajl. Za to može da se koristi TReistry klasa.

Hmm.... ja bas mislim da treba koristiti ini fajl. Za aliase se slazem, ali i njih u kombinaciji sa inifajlom. Znaci nesto ovako:
[Baza]
ServerName=fb_server (ili samo localhost)
DBName=db_alias (kao sto je Rambo opisao)
...

X puta se desava da imas vise verzija baze (razvojna, u produkciji, od druge firme,...), pa cak i vise servera se zna desiti (najjednostavnije - localhost i jos neki), i ako iz nekog razloga zelis da promenis bilo alias bilo server, mislim da je ini fajl zakon.

mr.zhile: Moras reći koje komponente koristiš za pristup bazi, jer od toga zavisi kako će tačno kod izgledati.
Npr., kod FBPlusa ide:
FIBDatabase.DBName:=ServerName+':'+DBName;
FIBDatabase.Open;
 
Odgovor na temu

mr.zhile
Ivan ZHILE
C# developer

Član broj: 185721
Poruke: 249
77.46.246.*



+2 Profil

icon Re: Putanja ka firebird bazi smestena u ini fajl?14.07.2008. u 13:05 - pre 191 meseci
@schild
Koristim dbExpres komponente,SqlConnection,SimpleDataSet...
Don't worry be happy
 
Odgovor na temu

Miloš Baić
Miloš Baić
ERP (Dynamics NAV) programer
Beograd

Član broj: 72468
Poruke: 1155
*.adsl-1.sezampro.yu.



Profil

icon Re: Putanja ka firebird bazi smestena u ini fajl?14.07.2008. u 17:49 - pre 191 meseci
Citat:
mr.zhile:Koristim dbExpres komponente,SqlConnection,SimpleDataSet...

Nije loša varijanta, al mislim da je bolji pristup rad sa nekim od biblioteka koje su namenjene za FB. Pridružujem se FIBPlus komponentama. Takođe, slažem se da je bolja varijanta rad sa .ini fajlovima zbog razloga koje je sam schild naveo.
Someone's sitting in the shade today because someone planted a tree a long time ago.
 
Odgovor na temu

komplikator
Programer / sys. inženjering
CRO

Član broj: 29755
Poruke: 158
*.adsl.net.t-com.hr.

ICQ: 13387003


+8 Profil

icon Re: Putanja ka firebird bazi smestena u ini fajl?15.07.2008. u 08:07 - pre 191 meseci
I još ako si postaviš da kao parametar programa zoveš neku sekciju u INI, ili kao parametar zoveš određeni INI lako si složiš (i olakšaš život) da možeš koristiti mnoštvo konfiguracija programa (zbog raznih baza, raznih postavki, defaulta, itd). Meni je to još zgodnije od registryja. Osim toga, INI mi je znatno jednostavnije obuhvatiti backupom, poslati premo neta i sl. nego se igrati sa registryjem, permissionima usera da pročitam njegov registry i ne znam što sve, a da n spominjem ako nekome krepaju windoze, pa spašavaj i vuci iz registryja... ovako mi je ini znatno lakši. Registry je daleko od nke nauke ili muke, odnosno odavno mi nije nikakav bauk, no više volim svoje informacije držati na mojem mjestu i znati što s njima radim ja, a ne OS.
God is real unless is declared as integer.
 
Odgovor na temu

mr.zhile
Ivan ZHILE
C# developer

Član broj: 185721
Poruke: 249
77.46.242.*



+2 Profil

icon Re: Putanja ka firebird bazi smestena u ini fajl?15.07.2008. u 09:02 - pre 191 meseci
Citat:
Miloš Baić: Nije loša varijanta, al mislim da je bolji pristup rad sa nekim od biblioteka koje su namenjene za FB. Pridružujem se FIBPlus komponentama. Takođe, slažem se da je bolja varijanta rad sa .ini fajlovima zbog razloga koje je sam schild naveo.

Da li mozda postoje (predpostavljam da da) FIBPlus komponente free full version na netu?
Ako moze neki link ka njima gde bi ih downloadovao?
Hvala svima na iscrpnim odgovorima...pomogli ste mi ,ali sam ipak pronaasao link koji to mnogo bolje opisuje ..
http://tehnika.krstarica.com/l/programiranje/ na srpskom
http://delphi.about.com/od/objectpascalide/l/aa120401a.htm na engleskom
UInace preporucen mi je sajt http://delphi.about.com/ kao nesto extra o Delphiju
Don't worry be happy
 
Odgovor na temu

mr.zhile
Ivan ZHILE
C# developer

Član broj: 185721
Poruke: 249
77.46.240.*



+2 Profil

icon Re: Putanja ka firebird bazi smestena u ini fajl?17.07.2008. u 12:23 - pre 191 meseci
Kako?Kojom metodom se ispituje da li .ini fajl postoji ili ne?Hteo sam da napravim aplikaciju koja ima .ini fajl u kome je upisana putanja do baze.
Ako nema .ini fajla, ili baza ne moze da se otvori, program trazi da se upise putanja do baze.
Kada je ta putanja ispravna upisuje se u ini fajl.
Pomoc?
Don't worry be happy
 
Odgovor na temu

Miloš Baić
Miloš Baić
ERP (Dynamics NAV) programer
Beograd

Član broj: 72468
Poruke: 1155
93.86.85.*



Profil

icon Re: Putanja ka firebird bazi smestena u ini fajl?17.07.2008. u 13:26 - pre 191 meseci
Citat:
Kako?Kojom metodom se ispituje da li .ini fajl postoji ili ne?Hteo sam da napravim aplikaciju koja ima .ini fajl u kome je upisana putanja do baze.
Ako nema .ini fajla, ili baza ne moze da se otvori, program trazi da se upise putanja do baze.
Kada je ta putanja ispravna upisuje se u ini fajl. Pomoc?


@mr.zhile

Polako, probaj odgovor prvo pronaći sam. Bar počni, npr. pretragom foruma i tema sa ini fajlovima. U njima ćeš naći i na koji način ćeš proveriti da li postoji fajl, kako ga kreirati, učitati, etc.

Someone's sitting in the shade today because someone planted a tree a long time ago.
 
Odgovor na temu

mr.zhile
Ivan ZHILE
C# developer

Član broj: 185721
Poruke: 249
77.46.240.*



+2 Profil

icon Re: Putanja ka firebird bazi smestena u ini fajl?17.07.2008. u 14:07 - pre 191 meseci
@Milos
Ok je to sto kazes,ali me buni,kao rucno da napravim ili fajl,odnosno,da li moze das e napravi kao notepad dokument pa mu stavim ekstenziju .ini ili?
Pavio sam ga u kodu kada se dobije ime aplikacije.ini
Don't worry be happy
 
Odgovor na temu

Miloš Baić
Miloš Baić
ERP (Dynamics NAV) programer
Beograd

Član broj: 72468
Poruke: 1155
*.adsl-a-1.sezampro.yu.



Profil

icon Re: Putanja ka firebird bazi smestena u ini fajl?17.07.2008. u 15:49 - pre 191 meseci
Zamolio bih te, ukoliko želiš relevntan odgovor, da preciznije postavljaš pitanja.

Ne znam da li sam te dobro shvatio, ali ako želiš napraviti ini fajl, ne moraš manuelno, preko "Notepad" aplikacije, nego možeš i preko delphija, mali primer za to:

Code:

uses
   IniFiles;
...
var
  ini: TIniFile;
begin
  // kreiranje fajla
  ini := TIniFile.Create('c:\Neki_Naziv.ini');
  try
    // upis vrednosti tipa stringa
    ini.WriteString('sekcija', 'vrednost', 'String');
  finally
    ini.Free;
  end;
 end;
...

Imaš funkcije WriteInteger, WriteBool, etc., piše u help - u. Zaboravio sam reći, da pored foruma imaš i dobar help. Ako želiš da ini fajl ima naziv kao aplikacija, možeš i to napraviti, ali izvrši domaći zadatak, forum, help i google, ako se nigde ne snađeš, pitaj, pa ćemo ti pomoći.

Pozdrav.
Someone's sitting in the shade today because someone planted a tree a long time ago.
 
Odgovor na temu

mr.zhile
Ivan ZHILE
C# developer

Član broj: 185721
Poruke: 249
79.101.242.*



+2 Profil

icon Re: Putanja ka firebird bazi smestena u ini fajl?17.07.2008. u 18:32 - pre 191 meseci
gde gresim?Kada se pozove sledeci kod
Code:

rocedure TDataModuleMain.DataModuleCreate(Sender: TObject);
var
baza:string;
begin
ini:=TIniFile.Create('put.ini');
ini.WriteString('baza','putanja','E:\DATEBASE\EMPLOYEE.GDB');
if not FileExists(ini.ReadString('baza','putanja','')) then
begin
  ShowMessage('Konekcija neuspesna');
  OpenDialog1.Execute;
  ini.WriteString('baza','putanja',OpenDialog1.FileName);
end;
baza:=ini.ReadString('baza','putanja','');
SQLConnection1.Params.Values['Database']:=baza;
SQLConnection1.Open;
ShowMessage('Konekcija ka bazi '+baza+' uspesna');
end;

Kada bazu E:\DATEBASE\EMPLOYEE.GDB premestim iz foldera,poruka o gresci se pojavi,zatim se otvori dialog,pojavi se porika o konekciji,pa ponovo o gresci,i opet se otvori dialog,pa se onda konektuje na bazu,fakticki 2 puta se pojavi poruka o gresci umesto jednom,a kada je defoult baza na svom mestu radi sve ok!
NEZNAM gde gresim?
Don't worry be happy
 
Odgovor na temu

mr.zhile
Ivan ZHILE
C# developer

Član broj: 185721
Poruke: 249
93.86.44.*



+2 Profil

icon Re: Putanja ka firebird bazi smestena u ini fajl?21.07.2008. u 10:47 - pre 191 meseci
Code:

ini:=TIniFile.Create(ChangeFileExt(application.Exename,'ini'));

Kod kada je napisan u FormCreate dogadjaju radi,ali u DataModuleCreate ne radi.
Gde gresim?
MOLIM ZA MALO PAZNJE I POMOC?
Don't worry be happy
 
Odgovor na temu

viking13
Aleksandar Milanovic
SBB
Novi Beograd

Član broj: 131741
Poruke: 190
*.sbb.rs.



Profil

icon Re: Putanja ka firebird bazi smestena u ini fajl?21.08.2008. u 15:06 - pre 190 meseci
Citat:
mr.zhile
Code:

ini:=TIniFile.Create(ChangeFileExt(application.Exename,'ini'));

Kod kada je napisan u FormCreate dogadjaju radi,ali u DataModuleCreate ne radi.
Gde gresim?
MOLIM ZA MALO PAZNJE I POMOC?


Grešiš u tome što je Application u unitu Forms koji DataModule ne koristi. Dodaj Forms u uses.
viking ®
 
Odgovor na temu

mr.zhile
Ivan ZHILE
C# developer

Član broj: 185721
Poruke: 249
79.101.188.*



+2 Profil

icon Re: Putanja ka firebird bazi smestena u ini fajl?21.08.2008. u 16:03 - pre 190 meseci
@viking13
Hvala na odgovoru.
Resio sam problem,i to je bio problem.

Don't worry be happy
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Putanja ka firebird bazi smestena u ini fajl?

[ Pregleda: 3465 | Odgovora: 14 ] > FB > Twit

Postavi temu Odgovori

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