Pfad zu Datenbank

Vom Front-End bis SOAP.

Moderator: Moderatoren

Antworten
JanR
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 129
Registriert: Di, 18. Okt 2005 14:44

Pfad zu Datenbank

Beitrag von JanR »

Hallo,

ich möchte über ein Webfrondend über den WAA Daten in eine Datenbank schreiben.

Die Datenbank liegt auf C:\TESTDB\

Zuerst prüfe ich ob die Datenbank existiert. Dort sagt er mir immer nein, egal ob sie existiert oder nicht. Hab festgestellt, dass er immer in dem Verzeichnis wo die WAA1SRV.EXE liegt sucht. Wie kann ich das ändern. Habe schon mit CurDir() und CurDrive() den Pfad geändert und auch schon den kompletten Pfad zur Datenbank angegeben, aber leider ohne Erfolg.

Hoffe ihr kenne eine Lösung.


Danke...

Jan
Benutzeravatar
Armin
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 392
Registriert: Mo, 26. Sep 2005 12:09
Wohnort: 75331 Engelsbrand
Danksagung erhalten: 3 Mal
Kontaktdaten:

Beitrag von Armin »

Hallo Jan,

ist aus Sicht des HTTP-Servers c:\testdb sichtbar, bzw. document-root, bzw das root-Verzeichnis des Servers? Möchtest Du über eine WAA-Anwendung darauf zugreifen? Liegt die WAA1SRV.EXE auch auf c:\?
Du solltest das c:\testdb freigeben.
Eigentlich kein Problem...

Grüsse, Armin
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

Hallo,

zuerst muss man mal fragen, auf welchem Server du agierst ?

Bei einem lokaler PC auf dem du volle Rechte hast (keine Verzeichnisbeschränkungen etc.) oder einem dedizierten Server kannst du mit fixen Pfaden arbeiten (aber immer die kompletten Pfade mit angeben !)

Code: Alles auswählen

cPfad := "c:\TestDB\"
use (cPfad+"Test.Dbf")
if neterr()
   * IMMER PRÜFEN !
auf einem WEB Server sind aber oft die Stammpfade gesperrt, somit kann man nicht einfach auf c: Zugreifen. Man muß relativ zum EXE Pfad agieren.

. = aktueller Pfad
.. = Pfad vor aktuellem Pfad.

angenommen deine WAA...EXE liegt in c:\xyz\cgi-bin\ und du willst nach c:\TestDB, dann starte in cgi-bin:

.\..\..\TestDB\ // aktuelles Verzeichnis, eins höher, eins höher ...

use (".\..\..\TestDB\test.dbf") müsste also gehen.

Zum Erstellen von Dateien (NTX etc.) muss man eventuell auch erst das Recht freischalten.
Gruß
Hubert
Antworten