AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi FireDAC->DBASE geht das?
Thema durchsuchen
Ansicht
Themen-Optionen

FireDAC->DBASE geht das?

Ein Thema von QuickAndDirty · begonnen am 9. Dez 2013 · letzter Beitrag vom 24. Jan 2014
Antwort Antwort
Seite 1 von 2  1 2      
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.944 Beiträge
 
Delphi 12 Athens
 
#1

FireDAC->DBASE geht das?

  Alt 9. Dez 2013, 12:21
Datenbank: Dbase • Version: for Windows • Zugriff über: Firedac
Hallo,
ich muss für einen Export nach DBase einen Zugriff auf dieses altehrwürdige Stück IT-Geschichte erlangen.
Leider bin ich garnicht mit dieser Sache vertraut.

Folgendes auf der haben Seite:
-Mit der "D7 Datenbankoberfläche" eine "Adressen.DBF" Datei/Datenbank/Tabelle gebaut.
-MDAC runtergaladen und installiert, vermutlich ist ODBC wohl nötig.
-Projekt mit dem man nach Firebird zugreifen kann um TADPhysODBCDriverlink erweitert.



Was noch fehlt:
-Was muss ich im ODBCAD32.exe einstellen, damit dieser mit der DBASE Datenbank kann?
-Wie haben die TADConnection.Parameter auszusehen?
[Edit]
-Habe im ODBCAD32.exe mal einen SystemDSN für die Datei angelegt
[/Edit]

Wäre nett, wenn auch nur Wissensschnipsel vorhanden sind, daas ihr sie postet, vielleicht ergibt sich dann noch ein Bild.
Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty ( 9. Dez 2013 um 12:33 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#2

AW: FireDAC->DBASE geht das?

  Alt 9. Dez 2013, 12:51
Provider=MSDASQL.1;Persist Security Info=False;Data Source=dBASE Files
Ado für DBase via odbc

Die System DSN erfordert aber Admin-Rechte (Standard) da könntest Du Probleme bekommen

Pardon die Regeinträge hab ich vergessen:
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI]

[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\dBASE Files]
"Driver"="C:\\Windows\\system32\\odbcjt32.dll"
"DriverId"=dword:00000215
"SafeTransactions"=dword:00000000
"UID"=""

[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\dBASE Files\Engines]

[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\dBASE Files\Engines\Xbase]
"ImplicitCommitSync"=""
"Threads"=dword:00000003
"UserCommitSync"="Yes"

[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\Excel Files]
"Driver"="C:\\Windows\\system32\\odbcjt32.dll"
"DriverId"=dword:00000316
"SafeTransactions"=dword:00000000
"UID"=""

[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\Excel Files\Engines]

[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\Excel Files\Engines\Excel]
"ImplicitCommitSync"=""
"Threads"=dword:00000003
"UserCommitSync"="Yes"
"FirstRowHasNames"=hex:01

[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\MS Access Database]
"Driver"="C:\\Windows\\system32\\odbcjt32.dll"
"DriverId"=dword:00000019
"SafeTransactions"=dword:00000000
"UID"=""

[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\MS Access Database\Engines]

[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\MS Access Database\Engines\Jet]
"ImplicitCommitSync"=""
"Threads"=dword:00000003
"UserCommitSync"="Yes"

[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Sources]
"MS Access Database"="Microsoft Access Driver (*.mdb)"
"Excel Files"="Microsoft Excel Driver (*.xls)"
"dBASE Files"="Microsoft dBase Driver (*.dbf)"

Fehlt nur noch die konkrete Datei.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector

Geändert von p80286 ( 9. Dez 2013 um 12:57 Uhr)
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.944 Beiträge
 
Delphi 12 Athens
 
#3

AW: FireDAC->DBASE geht das?

  Alt 9. Dez 2013, 13:01
[Edit]
Das mit den Registry einträgen ist aber hart. Wie kommt man auf sowas?
[/Edit]
Habe eine System DSN und ein User DSN angeleget.
Die Connection parameter sehen bei mir für Firedac (ado können wir nicht einsetzen)
so aus
Code:
DriverID=ODBC
ODBCDriver=Microsoft DBase Driver (*.dbf)
also das sind die Parameter die funktionieren

Aus irgendeinem Grund muss er wohl diese auch noch haben, weil ich loginPrompt aktiviert habe.
Code:
User_Name=Dbase
Password=test
Das Problem ist ich weiß nicht wie ich der ADConnection sage sie soll diese DSN benutzen.
Bei mir steht da einfach das hier.
Code:
ODBCAdvanced= DSN=Adressen3
Das führt nicht zu nem Fehler....aber wenn ich ein Querry absetze
Code:
Select * from Adressen
Meldet er:
Zitat:
Das Microsoft jet-Datenbankmodul konnte das Objekt 'Adressen' nicht finden. Stellen Sie sicher, dass das Objekt existiert und dass die Namens- Pfadandgaben richtig angegeben wurden.
*hmpf*

Das selbe sagt er mit Adressen3 anstelle von Adressen .
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.944 Beiträge
 
Delphi 12 Athens
 
#4

AW: FireDAC->DBASE geht das?

  Alt 9. Dez 2013, 13:13
Fehlt nur noch die konkrete Datei.
Wo trage ich die ein?
Ein Import ist so sowieso nicht möglich...weil mein Spielsystem WIn2k ist.
Ich baue das mal um und gucke ob das etwas ändert wenn ich die Registryeinträge importiere.

Hmm
eine C:\\WinNT\\system32\\odbcjt32.dll
gibts da nicht
Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty ( 9. Dez 2013 um 13:53 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#5

AW: FireDAC->DBASE geht das?

  Alt 9. Dez 2013, 13:58
[Edit]
Das mit den Registry einträgen ist aber hart. Wie kommt man auf sowas?
[/Edit]
Na alles was Du unter Verwaltung/ODBC einträgst landet in der Registry, Also warum den Umweg (wenn man weiß wie's geht)

Ich hab noch eine .DBF-Datei gefunden:
Code:
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\dBASE Files]
"Driver"="C:\\Windows\\system32\\odbcjt32.dll"
"DefaultDir"="Das_ist_meine_Datei"
"Description"="dd"
"DriverId"=dword:00000215
"FIL"="dBase 5.0"
"SafeTransactions"=dword:00000000
"UID"=""

[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\dBASE Files\Engines]

[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\dBASE Files\Engines\Xbase]
"CollatingSequence"="ASCII"
"Deleted"=hex:00
"ImplicitCommitSync"=""
"PageTimeout"=dword:00000005
"Statistics"=hex:00
"Threads"=dword:00000003
"UserCommitSync"="Yes"
Habe eine System DSN und ein User DSN angeleget.
Hoffentlich gibt's da keinen Namenskonflikt.

Die Connection parameter sehen bei mir für Firedac (ado können wir nicht einsetzen)
Firedac kenn ich noch nicht.

[QUOTE=QuickAndDirty;1239092]
Das Problem ist ich weiß nicht wie ich der ADConnection sage sie soll diese DSN benutzen.
Bei mir steht da einfach das hier.
Code:
ODBCAdvanced= DSN=Adressen3
Das führt nicht zu nem Fehler....aber wenn ich ein Querry absetze
Code:
Select * from Adressen
Meldet er:
Zitat:
Das Microsoft jet-Datenbankmodul konnte das Objekt 'Adressen' nicht finden. Stellen Sie sicher, dass das Objekt existiert und dass die Namens- Pfadandgaben richtig angegeben wurden.
Ich denke Du solltest die Fehlermeldung wörtlich nehmen.
Und wie sieht es mit den Zugriffsrechten aus?????

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.944 Beiträge
 
Delphi 12 Athens
 
#6

AW: FireDAC->DBASE geht das?

  Alt 9. Dez 2013, 15:09
Ich denke Du solltest die Fehlermeldung wörtlich nehmen.
Die Datei heisst Adressen.dbf
der DSN heist Adressen3

Ich habe gelesen das es probleme mit dem Case der Zeichen gibt, alles sollte ganz Groß oder ganz klein geschrieben sein?

Und wie sieht es mit den Zugriffsrechten aus?????
Adminsitrator auf ein WIN2K system
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#7

AW: FireDAC->DBASE geht das?

  Alt 9. Dez 2013, 15:17
Du könntest alternativ einen ADS Treiber verwenden. Der wird direkt von FireDAC unterstützt (TFDPhysADSDriverLink). Das sind 2 Dll und fertig. Kein ODBC, keine Registry, keine Probleme.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#8

AW: FireDAC->DBASE geht das?

  Alt 9. Dez 2013, 15:26
[OT]
Du könntest alternativ einen ADS Treiber verwenden. Der wird direkt von FireDAC unterstützt (TFDPhysADSDriverLink). Das sind 2 Dll und fertig. Kein ODBC, keine Registry, keine Probleme.
So schön und es ist wahr?
[/OT]

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.944 Beiträge
 
Delphi 12 Athens
 
#9

AW: FireDAC->DBASE geht das?

  Alt 9. Dez 2013, 15:45
Du könntest alternativ einen ADS Treiber verwenden. Der wird direkt von FireDAC unterstützt (TFDPhysADSDriverLink). Das sind 2 Dll und fertig. Kein ODBC, keine Registry, keine Probleme.
Wo finde ich die 2 DLLs?
[Edit]
Ich lade gerade arc32.exe herunter, ich denke das es das ist ?
[/Edit]
Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty ( 9. Dez 2013 um 16:13 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#10

AW: FireDAC->DBASE geht das?

  Alt 9. Dez 2013, 16:33
Eigentlich ist das das SQL-Tool zu ADS, aber es enthält wohl auch die Dlls. Es sind in den neueren Versionen 4 dll:
  • ace32.dll (Der eigentliche Treiber)
  • axcws32.dll (Die Kommunikationsschicht)
  • adsloc32.dll (Der embedded Server)
  • aicu32.dll (Die Unicode-Unterstützung)

Für dBase brauchst Du wahrscheinlich die 4. nicht. Die Installation schmiß früher die dlls immer ins system32. Dort holst Du Dir die dann raus und schiebst sie in Deinen Pfad bzw. zur Benutzung durch Arc32 in dessen Programmverzeichnis, dann ist das sauber.
[edit]
Die Client-Engine findest Du hier. Darauf wird auch in der FireDAC/ADS-Doku zu XE5 verwiesen.[/edit]
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all

Geändert von Union ( 9. Dez 2013 um 16:37 Uhr) Grund: Links hinzugefügt
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:03 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz