AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

ZEOS und MS-Access

Ein Thema von H.Bothur · begonnen am 18. Jan 2017 · letzter Beitrag vom 19. Jan 2017
Antwort Antwort
H.Bothur

Registriert seit: 25. Jun 2012
167 Beiträge
 
#1

ZEOS und MS-Access

  Alt 18. Jan 2017, 12:11
Datenbank: ACCESS • Version: ? • Zugriff über: Delphi / ZEOS
Moin,

nachdem ich Indy und die ZIP-Routinen unter RAD-Studio 10.1 wieder zum laufen bekommen habe kämpfe ich jetzt mit ZEOS - und irgendwie habe ich da gar keine echte Ahnung von und in den letzten zwei Tagen bei dem ganzen suchem im Netz auch nichts gefunden Bisher hatte ich unter Delphi 6.0 Prof den Zugriff auf die Access-Datenbanken so gemacht:

Delphi-Quellcode:
function TLieferantenForm.DatenbankOeffnen(LieferantenDBName: String): Integer;
begin
LieferantenADOConnection.ConnectionString := 'Provider=Microsoft.ACE.OLEDB.12.0;';
  LieferantenADOConnection.ConnectionString := LieferantenADOConnection.ConnectionString +'Data Source=' +LieferantenDBName +';';
  LieferantenADOConnection.ConnectionString := LieferantenADOConnection.ConnectionString +'Persist Security Info=False;';
LieferantenADOConnection.ConnectionString := LieferantenADOConnection.ConnectionString +'Jet OLEDB:Database Password=d15wfm30';
  LieferantenADOConnection.Connected := True;
  if LieferantenADOConnection.Connected then
  begin
    LieferantenADOQuery.close;
    LieferantenADOQuery.Sql.Text := ('SELECT count(*) as Anzahl FROM Artikel');
    LieferantenADOQuery.open;
    MainForm.LieferantenDBLEd.Text :=MainForm.LieferantenDBLEd.Text +': ' +IntToStr(LieferantenADOQuery.FieldByName('Anzahl').AsInteger);
    Result := LieferantenADOQuery.FieldByName('Anzahl').AsInteger;
    LieferantenADOQuery.close;
  end;
end;
Vielleicht kann mir jemand sagen wie ich das dann in ZEOS umsetze ?? Oder hat ein Beispiel wie er mit ZEOS auf ACCESS-Datenbanken zugreift ?

Vielen Dank
Hans

P.S: Crosspostet in Delphi-Treff
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#2

AW: ZEOS und MS-Access

  Alt 18. Jan 2017, 12:40
http://www.delphipraxis.net/22650-hi...uf-access.html
Delphi-Quellcode:
ZConnection1.Protocol := 'ado';
ZConnection1.Database := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Datenbank.mdb;Persist Security Info=False';
Eigentlich muss in deine Routine von oben am Anfang nur die Zeile LieferantenADOConnection.Protocol := 'ado'; eingefügt werden.

Geändert von nahpets (18. Jan 2017 um 13:29 Uhr)
  Mit Zitat antworten Zitat
H.Bothur

Registriert seit: 25. Jun 2012
167 Beiträge
 
#3

AW: ZEOS und MS-Access

  Alt 18. Jan 2017, 13:25
Moin,

den Beitrag hatte ich schon fünfmal gelesen - bis ich dann endlich merkte wo ich auf "Verbindung" klicken soll

Allerdings bekomme ich jetzt einen Fehler "Die Anwendung kann nicht gestartet werden. Die Informationsdatei für die Arbeitsgruppe fehlt oder ist exclusiv von einem anderen Benutzer geöffnet".

Die Eigenschaft Jet OLEDBatabase Password habe ich bereits mit dem Password der Datenbank belegt. Was mache ich denn jetzt falsch ??

Gruß
Hans
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#4

AW: ZEOS und MS-Access

  Alt 18. Jan 2017, 13:44
Das dürfte ein Rechteproblem sein.

Im Dialog zum Auswählen der Datenbank müsste es einen Reiter "Erweitert" geben. Schau bitte mal, was dort alles so angekreuzt ist, bzw. nicht.

Davon abhängig darf ausschließlich nur Deine Applikation auf die Datenbank zugreifen oder eben eine andere Applikation.

Schließ bitte erstmal alles an Programmen, was eventuell auf die Datenbank zugreift.
Die Datenbankverbindung sollte auch in der IDE nicht geöffnet sein.

Und dann nochmal probieren.

Die Fehlermeldung hängt eventuell mit dem Ablageort der system.mdb zusammen.

Ansonsten mal hier schauen: https://social.msdn.microsoft.com/Fo...orum=accessdev

http://sqlfaq.de/blog/?p=50

Weitere Hinweise sind eventuell hier zu finden: https://www.benefind.de/web.php?org=...+arbeitsgruppe
  Mit Zitat antworten Zitat
H.Bothur

Registriert seit: 25. Jun 2012
167 Beiträge
 
#5

AW: ZEOS und MS-Access

  Alt 18. Jan 2017, 14:13
Moin Stefan,

angehakt war unter "Erweitert" Share Deny None - ich habe das jetzt mal auf "ReadWrite" geändert - das gibt aber das gleiche Ergebnis.

Die Datei ist nicht irgendwie anders geöffnet und liegt auf einem lokalem Laufwerk. Trotzdem bekomme ich noch diese Meldung

Direkt mit Access kann ich übrigens problemlos auf die Datenbank zugreifen: Doppelklick, Passwort eingeben und läuft

Und in den Links nach der Fehlermeldung habe ich bisher leider auch keinen Ansatz gefunden

Hans
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#6

AW: ZEOS und MS-Access

  Alt 18. Jan 2017, 14:38
Beim Zugriff auf Access-Datenbanken entstehen temporäre Dateien, in der Regel im %TEMP%-Verzeichnis. Der Name beginnt mit JET.

Schau bitte mal nach, ob es davon welche in Deinem Temp-Verzeichnis gibt. Wenn ja, lösche sie.
Solange das nicht gelingt, gibt es noch einen Prozess, der auf eine Access-Datenbank zugreift.
Leider kann man an den Dateien nicht erkennen, welcher Prozess das ist. Eventuell hilft hier der ProcessExplorer.

https://technet.microsoft.com/en-us/...sexplorer.aspx

Beim Öffnen einer Access-Datenbank entsteht neben der Datenbankdatei eine weitere Datei mit 'nem Dateinamen in der Form Datenbankname.ldb.

Gibt es diese Datei? Wenn ja, kannst Du sie löschen?
Wenn nein, dann greift noch irgendein Prozess auf die Datenbank zu. Finde den heraus und beende ihn.
Dann erneut probieren.

Ist für die Datenbank ein ODBC-Treiber eingerichtet?

Wenn ja, geh' bitte mal in dessen Konfiguration.
Dort müsste es irgendwo die Auswahlmöglichkeit zu einer Systemdatenbank geben. Wähle dort bitte "Keine" aus.

Ist sichergestellt, dass Dein Programm in dem Verzeichnis, in dem sich die Access-Datenbank befindet, Schreibrechte hat?

Falls weiterhin eine Fehlermeldung kommt, diese bitte im Dialog mit Strg+C in die Zwischenablage kopieren und dann hier einfügen.
  Mit Zitat antworten Zitat
H.Bothur

Registriert seit: 25. Jun 2012
167 Beiträge
 
#7

AW: ZEOS und MS-Access

  Alt 19. Jan 2017, 10:53
Ich habs endlich raus - natürlich war es mein Fehler - welch Frage:

Ich hatte 'Persist Security Info=False;' leider nicht gesetzt und das stand auf True
Jetzt klappt es - vielen Dank !!

Hans
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 04:11 Uhr.
Powered by vBulletin® Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf