Konekcija sa bazom u dijeljenom direktorijumu

  • 16 odgovora
  • 5.148 pregleda
Konekcija sa bazom u dijeljenom direktorijumu 08.11.2005. u 14:52 · pre 255 meseci #1
U mrezi racunara sa Windows 2000 koristio sam konekciju na bazu u serverskom racunalu preko BDE tako da sam koristio dijeljeni direktorij, i na Win 2000 (tacnije Win 2000 na serverskom racunalu), je sve to radilo kako treba, medjutim kad sam na servesko racunalo ubacio Windows XP mreza radi, sve je Ok osim sto niti u jednoj varijanti Interbase ne moze da ostvari konekciju sa bazom.Dakle direktirij je dostupan ali IB server odbija rad.
Jel nesto trebam promjeniti u na serverskoj masini na kojoj je Win XP
Re: Konekcija sa bazom u dijeljenom direktorijumu 08.11.2005. u 16:31 · pre 255 meseci #2
Da li imas full pristup tom fajlu? Mozda imas samo read-only pristup pa zato nece?
Zasto jednostavno ne instaliras IB server na racunaru gde ti je baza pa se povezujes direktno na IB server preko IP adrese racunara gde je baza?
Potpis
Play Store
Re: Konekcija sa bazom u dijeljenom direktorijumu 08.11.2005. u 17:25 · pre 255 meseci #3
Fajl nije read only, mreza fajlovi i ostalo sve radi.Jedino ne radi IB sa tom bazom.
Kako mogu to uraditi sa IP.Pokusavao sam ali ne ide
Re: Konekcija sa bazom u dijeljenom direktorijumu 08.11.2005. u 18:10 · pre 255 meseci #4
Najlakse bi bilo da napravis Alias za bazu (drajver koji koristis, adresa na kojoj se nalazi baza i sve ostalo) i da se samo preko njega konektujes. Alias dodajes ovako:
Code:
var
  AliasParams: TStringList;
begin
  AliasParams := TStringList.Create;
  try
    with AliasParams do begin
      Add('OPEN MODE=READ');
      Add('USER NAME=MOJUSER');
      Add('PASSWORD=MOJPASS');
      Add('SERVER NAME=ADRESASERVERA:/PUTANJADOBAZE/BAZA.GDB');
    end;
    Session.AddAlias('MOJALIAS', 'INTRBASE', AliasParams);
    ...
  finally
    AliasParams.Free;
  end;
end;

Posle samo postavis Database.AliasName na alias koji si kreirao i to je to :)
Potpis
Play Store
Re: Konekcija sa bazom u dijeljenom direktorijumu 08.11.2005. u 19:00 · pre 255 meseci #5
Ako ti ovo srkijevo ne pomogne proveri da ti nije mozda problem sa Nekim FireWall-om ili AV softverom?
BTW IB koristi port 3050 za komunikaciju.
Pozdrav
Potpis
Marcha
-----------------------------------
Pretpostavka je majka zajeba.
Re: Konekcija sa bazom u dijeljenom direktorijumu 08.11.2005. u 20:27 · pre 255 meseci #6
E, da... jos jedna bitna stvar, u fajlu C:\Windows\System32\Drivers\Etc\Services treba da dodas gds_db 3050/tcp. Ako ti je ovo poslednja linija, obavezno dodaj jos jednu praznu ispod nje inace nece raditi kako treba.
Potpis
Play Store
Re: Konekcija sa bazom u dijeljenom direktorijumu 09.11.2005. u 01:49 · pre 255 meseci #7
Ma ja to uglavnom znam, stvar je da to nece raditi ako je server Win XP, u svim ostalim windowsima radi 2000,2003 radi bez problema, prijavim dijeljeni direktorij, medjutim ne znam sta mu ne dozvoljava komunikaciju na Win XP.
Re: Konekcija sa bazom u dijeljenom direktorijumu 09.11.2005. u 11:37 · pre 255 meseci #8
Ja upravo radim sa softwerom koji sam pisao... server je na WinXP SP2 sa IB serverom, a na klijentima je samo WinXP SP2 i moj program i sve radi savrseno bas na nacin koji sam ti opisao.
Potpis
Play Store
Re: Konekcija sa bazom u dijeljenom direktorijumu 14.11.2005. u 00:38 · pre 254 meseci #9
Nikako ovo da rjesim, kako bi tacno terbao unijeti ako se baza (MojaBaza.GDB)
nalazi na lokalnoj masini u direktorijumu c:\MojaFirma\Bazapodataka\MojaBaza.GDB

Jel mozda 127.0.0.1:\MojaFirma\Bazapodataka/MojaBaza.GDB
Re: Konekcija sa bazom u dijeljenom direktorijumu 14.11.2005. u 22:27 · pre 254 meseci #11
Ma neide nikako upisao sam


procedure TForm1.Pokusaj;
var
AliasParams: TStringList;
begin
AliasParams := TStringList.Create;
try
with AliasParams do begin
Add('OPEN MODE=READ');
Add('USER NAME=n');
Add('PASSWORD=n');
Add('SERVER NAME= 127.0.0.1 c:\MojServer\MojaBaza.GDB');
end;
Session.AddAlias('MOJALIAS', 'INTRBASE', AliasParams);
...
finally
AliasParams.Free;
end;
end

zatim sam stavio componentu database i upisao u
databasename : MOJALIAS
drivername : interbase

i konekcija nije uspjela

Re: Konekcija sa bazom u dijeljenom direktorijumu 14.11.2005. u 22:39 · pre 254 meseci #12
Probaj da umesto SERVER NAME stavis DATABASE. Ne znam koju verziju IB koristis. Moguce je da je to u pitanju. Kada bi rekao koja je greska u pitanju bilo bi mnogo lakse da je ispravimo :)

I kad pises putanju moras da ide AdresaServera iza nje odmah ide : (nisi stavio : u kodu koji si postaovao ovde) pa tek onda putanja do baze. Neki drajveri ne podrzavaju duge putanje i putanje sa razmakom pa koristi DOS (8.3) imena (npr. C:\Progra~1\MojPro~1\MojaBa~1.gdb umesto C:\Program Files\Moj Program\Moja Baza.gdb').

BTW: OPEN MODE stoji na Read... znaci da mozes samo da citas iz baze ;)
Potpis
Play Store
Re: Konekcija sa bazom u dijeljenom direktorijumu 15.11.2005. u 15:17 · pre 254 meseci #13
Napisao si:
Add('SERVER NAME= 127.0.0.1 c:\MojServer\MojaBaza.GDB');
a trebalo bi :
Add('SERVER NAME= 127.0.0.1:c:\MojServer\MojaBaza.GDB');

Zaboravio si dvotacku izmedju IP adrese i naziva datoteke.
Potpis
Marcha
-----------------------------------
Pretpostavka je majka zajeba.
Re: Konekcija sa bazom u dijeljenom direktorijumu 15.11.2005. u 18:03 · pre 254 meseci #14
Probaj prvo sve da pokreneš samo na serveru koristeći putanje oblika:
c:\MojaFirma\Bazapodataka\MojaBaza.GDB ili
127.0.0.1:c:\MojaFirma\Bazapodataka\MojaBaza.GDB
i kad tako proradi, onda se pozabavi mrežom.
Probaj prvo sa dodavanjem mrežnog NetBEUI i IPX/SPX protokola,
a zatim mapiranjem diska na serveru... i naravno probavaj različite oblike putanja,
npr. \\NazivServera\c\NazivNekogFoldera\MojaBaza.gdb
Probaj i da dozvoliš full pristup npr. C particije diska na serveru svim korisnicima,
naravno privremeno...
Ajde, objavi rezultate i daj malo detalja ako ne uspije (kakvu poruku izbaci...)
Re: Konekcija sa bazom u dijeljenom direktorijumu 15.11.2005. u 21:12 · pre 254 meseci #15
probao sam i kad pokrecem program aktivirajuci pri tom componentu database nemam problema problem je kad hocu da spojim da bazu componnte
Table ili Query npr prilikom izrade povezem ih na MOJALIAS medjutim ne mogu tad povuci polja, nadao sam se da ce to krenuti ako prilikom pokretanja componentu
Table stavim da je aktivna medjutim dat mi izbaci gresku u liniji koda

Session.AddAlias('MOJALIAS', 'INTRBASE', AliasParams);
Re: Konekcija sa bazom u dijeljenom direktorijumu 16.11.2005. u 10:24 · pre 254 meseci #16
Ovako, da razdvojimo: ako možeš da aktiviraš komponentu TDatabase onda znači da
si dobro podesio konekciju ka Interbase (znači lokalno ili mreža radi sa definisanim
protokolima i putanjama i to za sada ne mijenjaj).
Čini mi se da je ovdje zbrka sa nazivima alijasa i DatabaseName.
Probaj da ime alijasa ne bude isto kao DatabaseName. Već imaš kao primjer
definisan alijas IBLOCAL, a za TDatabase.Name i TDatabase.DatabaseName
daj neka druga i različita imena.
Zatim sve ostale komponente kači na komponentu TDatabase koristeći
npr. TTable.DatabaseName := TDatabase.DatabaseName i
naravno ne zaboravi da odabereš ime tabele iz baze za TTable.TableName.
Uostalom, probaj sve statički prvo da povežeš a onda probaj kroz kod.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme