Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Mit Zeos auf MS-Access zugreifen (https://www.delphipraxis.net/47101-mit-zeos-auf-ms-access-zugreifen.html)

hsbc 6. Jun 2005 18:28

Datenbank: MS-Access • Zugriff über: Zeos

Mit Zeos auf MS-Access zugreifen
 
Hallo allerseits,

ich habe versucht, mit Zeos auf eine MS-Access Datenbank zuzugreifen. Leider bekomme ich bei Table.Open die Fehlermeldung:

Unterschiedliche Typen:
Feld test: erwartet String - gefunden Widestring

In der Datenbank-Tabelle ist dieses Feld als Text mit einer Länge von 40 Zeichen definiert. Warum wird dieses Feld als Widestring interpretiert, bzw. wie kann man das als String definieren?

Oder liegt vielleicht mein Fehler in der ZConnection von Zeos? Hier habe ich als Protokoll ado angegeben und bei Database den ConnectionString eingegeben, was ja auch alles funktioniert.

mfg
Herbert

hsbc 7. Jun 2005 07:24

Re: Mit Zeos auf MS-Access zugreifen
 
Hallo nochmals,

was mir soeben aufgefallen ist, ist das, dass ich mit ZQuery ohne Fehlermeldung auf die Daten zugreifen kann.

Warum verhält sich ZTable da anders oder muss ich irgendetwas umstellen? Bei Open einer ZTable kommt bei sämtlichen String-Feldern oben erwähnte Fehlermeldung.

Hat jemand eine Idee, was man da ändern kann?

mfg
Herbert

Bernhard Geyer 7. Jun 2005 08:05

Re: Mit Zeos auf MS-Access zugreifen
 
Der Stringfelder von Access sind immer Widestring-Felder. Also macht ZTable hier irgendeinen Fehler.
Grundfrage: Verwendest Du auch die neueste Version oder 'ne Uraltversion?

Aber wieso Zeos? Mit D7 Pro hast Du doch dbGo und dieser kann Access über den Jet-OLEDB/ADO-Treiber auch problemlos ansprechen.

Stevie 7. Jun 2005 08:14

Re: Mit Zeos auf MS-Access zugreifen
 
Hallo Herbert,

versuch es mal mit der aktuellsten Version aus dem cvs,
dort habe ich vor einigen Tagen einen Fehler mit WideString-Felder in ADO behoben.

Wenn ich mit dieser Version über ein TZTable-Objekt auf eine Access-Datenbank zugreife,
werden die Felder zwar als TWideStringField angelegt aber ohne den von dir genannten Fehler.

Falls der Fehler mit der aktuellen Version bei dir immer noch auftreten sollte, bitte ich dich,
mir ein kleines Testprojekt zukommen zu lassen, wo man den Fehler reproduzieren kann.

MfG
Stevie

hsbc 7. Jun 2005 10:45

Re: Mit Zeos auf MS-Access zugreifen
 
Die Zeos-Komponenten verwende ich deshalb, weil ich ein DB-Projekt damit erstellt habe, welches auf mySQL, Firebird und MSSQL wahlweise zugreifen kann. Jetzt wollte ich dieses Projekt insofern erweitern, dass man damit auch auf MS-Access zugreifen kann.

Wie gesagt, wenn ich anstatt ZTable die ZQuery verwende, dann funktioniert das auch. Nur mit ZTable in Verbindung mit MS-Access kommt Zeos scheinbar nicht klar, obwohl die ZTable mit mySQL, Firebird und MSSQL einwandfrei arbeitet.

@Stevie: was meintest du mit aktuellster Version aus cvs ? Ich verwende hier die Zeos-Version 6.5.1 Alpha vom 14.11.2004 - gibt es hier vielleicht etwas Neueres?

mfg
Herbert

Stevie 7. Jun 2005 10:58

Re: Mit Zeos auf MS-Access zugreifen
 
Zitat:

Zitat von hsbc
@Stevie: was meintest du mit aktuellster Version aus cvs ? Ich verwende hier die Zeos-Version 6.5.1 Alpha vom 14.11.2004 - gibt es hier vielleicht etwas Neueres?

Na sicher! :???: Guckst du hier!

hsbc 7. Jun 2005 11:32

Re: Mit Zeos auf MS-Access zugreifen
 
ok Stevie - danke jedenfalls für den Link - aber nachdem mein Englisch hierfür wahrscheinlich nicht ausreicht, ist das doch etwas zu hoch für mich. Ich wüsste nicht, was ich mit dieser Seite anfangen kann bzw. von wo ich eine neuere Version herunterladen kann.

Ich bedanke mich aber trotzdem für die versuchte Hilfe.

mfg
Herbert

Stevie 7. Jun 2005 11:47

Re: Mit Zeos auf MS-Access zugreifen
 
Kein Problem, dann erklär ich dir, wie's geht. ;-)

Lad dir am besten diesen CVS-Client runter.

Nachdem du das Programm installiert und den Rechner neu gestartet hast,
hast du im Windows-Explorer im Kontextmenü neue Optionen.

Dort wählst du "CVS Auschecken..." und trägst dann unter CVSROOT folgendes ein:
:pserver:anonymous@cvs.sourceforge.net:/cvsroot/zeoslib

Unter Modul ganz unten trägst du zeosdbo_rework ein und klickst auf OK.

Die Installation hat sich etwas verändert,
so muss nun nur noch das Package ZComponent installiert werden,
nachdem alle Packages kompiliert wurden.

MfG
Stevie

hsbc 7. Jun 2005 13:17

Re: Mit Zeos auf MS-Access zugreifen
 
Hallo Stevie,

Dank deiner Hilfe ist es nun gelungen, Zeos neu zu installieren - aber:

es hat sich leider am Verhalten des MS-Access-Zugriffes nichts geändert. Es kommt nach wie vor die gleiche Fehlermeldung.

Ich hoffe, ich habe bei der Installation alles richtig gemacht: Alles neu compiliert und die Zeosdbo.bpg installiert. Danach waren auch die Symbole in den Zeos-Komponenten andersfärbig. Nachdem die Installation fehlerfrei abgelaufen ist, nehme ich an, dass ich jetzt die neuesten Zeos-Daten im Rechner habe.

Was könnte sonst noch der Grund sein, dass ZTable mit den WideStrings in MS-Access nicht klar kommt?

mfg
Herbert

Stevie 7. Jun 2005 13:26

Re: Mit Zeos auf MS-Access zugreifen
 
Zitat:

Zitat von hsbc
Was könnte sonst noch der Grund sein, dass ZTable mit den WideStrings in MS-Access nicht klar kommt?

Falls du in deinem TZTable-Objekt bereits die Felder deklariert hast - ich denke, dies ist der Fall, weil du das Programm ja auch mit anderen Datenbanken benutzt - dann liegt bei dir der folgende Fehler vor, den ich gerade zu beheben im Begriff bin.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:37 Uhr.
Seite 1 von 2  1 2      

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