Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Datenbankdatei von mehreren Programmen aus nutzen (https://www.delphipraxis.net/105321-datenbankdatei-von-mehreren-programmen-aus-nutzen.html)

Svenkan 19. Dez 2007 20:52

Datenbank: dBase • Zugriff über: TQuery

Datenbankdatei von mehreren Programmen aus nutzen
 
Guten Abend!
Ich möchte von mehreren Programmen aus auf eine Datenbankdatei zugreifen. Leider gibt es desöfteren einige Probleme dann und die BDE und meckert mehrfach rum, dass die Daten nicht ausgelesen werden können.
Gibt es eine Möglichkeit, dass man mit mehreren Programmen zugreifen kann?
Ich wollte die Dateien rüberkopieren, allerdings meckert mein Programm da auch rum (bzw. die BDE), dass die Datei unter Benutzung steht!

katjah 19. Dez 2007 20:56

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
Hi,

ein paar mehr Details wären da schon hilfreich... Datenbanken sind eigentlich schon dazu da, um mit mehreren Programmen oder Benutzern darauf zuzugreifen.

Also:

- Welches Datenbanksystem hast Du im Einsatz ?
- Welche Fehlermeldung kommt ?
- Öffnet evtl. eines der Programme die Datenbank exclusiv ?

Svenkan 19. Dez 2007 20:58

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
1. dBase (steht oben :p)
2. "Datei C:\Program Files\svPlan\VT07_08.dbf kann nicht geöffnet werden. Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird."

katjah 19. Dez 2007 21:51

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
ok, und was ist mit Frage 3 ?

Svenkan 19. Dez 2007 22:19

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
Aso^^
Ähm, was meinst du mit exclusiv?
Also eher..wo seh ich diese Einstellung?

katjah 20. Dez 2007 20:18

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
Hi,

excluisiv heißt, daß immer nur einer an die Datenbank dran darf.

Das kannst Du z.B. mit der Eigenschaft "exclusive" von TTable einstellen.

Sind das Deine eigenen Programme, die sich gegenseitig blockieren ?

Gruß Katja

haentschman 20. Dez 2007 20:28

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
Hallo...

imho kannst Du nur gleichzeitig auf *.dbf oder *.db zugreifen wenn du mit Sessions arbeitest.

schaue dir mal TSession an...

Svenkan 20. Dez 2007 21:08

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
@ katjah: ich benutzte keine Tables, sondern Querys. Und das andere Programm ist ein Fremdprogramm!
@ haentschman: können 2 verschiedene Programme eine Session beuntzen?

mkinzler 20. Dez 2007 21:12

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
Zitat:

@ haentschman: können 2 verschiedene Programme eine Session beuntzen?
Wenn beide auf der BDE basieren, brauchen die Anwendungen das gleiche Lock-verzeichnis, welches man in der TSession-Komponente einstellen kann.

Svenkan 20. Dez 2007 21:14

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
Zitat:

Zitat von mkinzler
Zitat:

@ haentschman: können 2 verschiedene Programme eine Session beuntzen?
Wenn beide auf der BDE basieren, brauchen die Anwendungen das gleiche Lock-verzeichnis, welches man in der TSession-Komponente einstellen kann.

NetFileDir oder PrivateDir?
Ich denke mal letzteres, oder?

mkinzler 20. Dez 2007 21:23

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
Nein ersteres.

Svenkan 20. Dez 2007 21:25

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
Ah. :D
Wird die PDOXUSRS.NET autom. erstellt oder muss man diese dorthin kopieren?

mkinzler 20. Dez 2007 21:28

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
Diese wird automatisch erstellt.

haentschman 20. Dez 2007 21:32

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
also...

ich habe mal eine Anwendung mit Paradox erstellt, welche netzwerkfähig war.

d.h. jedes der laufenden Programme hatte quasi eine TSession Komponente.

...hat dein Fremdprogramm keine Session integriert öffnet es die DB exclusiv....und du kannst nicht gleichzeitig darauf zugreifen.

NetFileDir ist der Ordner wo die Netzwerksteuerdatei PDOXUSRS.NET liegt. z.B. das Datenverzeichnis.
---> PDOXUSRS.NET wird nicht automatisch erstellt. [edit]zumindest war es bei mir so... :gruebel: [/edit]
---> bei installierter BDE liegt sie meistens in c:\
---> weil ich mit der Verwendung dieser Probleme mit einer anderen Paradox Anwendung hatte habe ich eine Kopie ins Datenverzeichnis gelegt.

PrivateDir z.B. das Arbeitsverzeichnis einstellen für die .lck Datei.

Hoffe das hilft etwas weiter...

Svenkan 20. Dez 2007 21:58

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
Danke Leute!
Ihr habt mir echt gut weitergeholfen mit den Infos. ;)
Jetzt hab ich ganz nebenbei auch mein Stammverzeichnis von den ganzen Tabellenabfragen (diese _QSQLXXX.DBF) bereinigen können. :)

@ haentschman: bei mir liegt auch nur eine Datei unter C:\.

grenzgaenger 20. Dez 2007 23:39

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
aber sorry, weshalb nimmst du die BDE? die wird doch schon seit jahren nicht mehr unterstützt... wenn du jetzt noch die gelegenheit hast, solltest dir überlegen umzusteigen...

threads zu diesen thema, gibts hier massenweise, einfach die SUFU nützen.

schöne grüsse
GG

mkinzler 20. Dez 2007 23:43

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
Ich vermute mal, er will auf die Daten eines Fremdprogrammes zugreifen.

Svenkan 20. Dez 2007 23:51

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
Zitat:

Zitat von mkinzler
Ich vermute mal, er will auf die Daten eines Fremdprogrammes zugreifen.

Genau so siehts aus. ;)
Und da dieses die BDE benutzt, bin ich leider an diese gebunden (was schon so manche Probleme bereitet hat :?).

grenzgaenger 21. Dez 2007 00:11

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
an deiner stelle würd ich mir auch mal den ODBC zugriff angucken, da kannste auch das netzewerkdirectory einstellen und dann sollt es funktionierne. du ersparst dir darduch die BDE (mit sämtlichen komplikationen) mitzuschleppen...

guck es dir mal an :-D

mkinzler 21. Dez 2007 06:31

Re: Datenbankdatei von mehreren Programmen aus nutzen
 
Das andere (Fremd-=programm verwendet aber die BDE, dann ist es besser diese auch zu verwenden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:51 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz