Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Fehler mit dem Microsoft Acces Driver (https://www.delphipraxis.net/52382-fehler-mit-dem-microsoft-acces-driver.html)

bennle 29. Aug 2005 11:36

Datenbank: ADO • Zugriff über: JA

Fehler mit dem Microsoft Acces Driver
 
Hallo,
Ich habe den Fehler:
'[Microsoft][ODBC Microsoft Access Driver] Datei (Unbekannt)nicht gefunden'

Ich verstehe nicht genau warum der kommt.

Zum Ablauf:
Ich habe eine Listbox, welche über eine Datenbank gefüllt wird. Wir ein eintrag ausgewählt, dann wird die nummer in einem Label ausgegeben bzw in die nexte Listbox die Unterkategorie gegeben.

Sobald ich aber ein Bildlink mit OpenPictureDialog geöffnet habe, kommt dieser Fehler. Bzw erst wenn ich wieder eine Änderung in der Listbox mache.

Woran kann das Liegen?
Delphi-Quellcode:
procedure TForm8.ListBox2Click(Sender: TObject);
var
a,b,p: String;
begin
a3.Clear;a4.Clear;a5.Clear;a6.Clear;
p:=a2[listbox2.ItemIndex];

 
listbox1.Color:=clsilver;listbox2.Color:=clsilver;
listbox1.clear;listbox2.clear;

 
ADOCOnnection1.ConnectionString:='DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=database.mdb';
ADOCOnnection1.Open;
adoquery1.Connection:=ADOConnection1;
adoquery1.SQL.Text:='SELECT * FROM daten WHERE id=''' + p + '''';
adoquery1.Open;
if adoquery1.Eof then begin
 label1.Caption:=a2[listbox2.ItemIndex];

 
end else begin
while not adoquery1.Eof do begin
a:=adoquery1.FieldByName('cat_name').AsString;
b:=adoquery1.FieldByName('cat_id').AsString;
listbox2.AddItem(a,nil);
a3.Add(b);
adoquery1.Next;
end;
listbox2.Color:=clwhite;
label2.Caption:='';
end;

 
ADOQuery1.Close;
ADOConnection1.Close;

 
end;
MfG
Bennle

shmia 29. Aug 2005 11:42

Re: Fehler mit dem Microsoft Acces Driver
 
Zitat:

Zitat von bennle
Hallo,
Ich habe den Fehler:
'[Microsoft][ODBC Microsoft Access Driver] Datei (Unbekannt)nicht gefunden'

Du verwendest den falschen Treiber.
Mit dem ODBC - Treiber gehtst du einen Umweg, der Performance und Funktionalität kostet.
Du musst den OLE-DB Provider verwenden:
Delphi-Quellcode:
ADOCOnnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=database.mdb';

bennle 29. Aug 2005 11:46

Re: Fehler mit dem Microsoft Acces Driver
 
Zitat:

Zitat von shmia
Zitat:

Zitat von bennle
Hallo,
Ich habe den Fehler:
'[Microsoft][ODBC Microsoft Access Driver] Datei (Unbekannt)nicht gefunden'

Du verwendest den falschen Treiber.
Mit dem ODBC - Treiber gehtst du einen Umweg, der Performance und Funktionalität kostet.
Du musst den OLE-DB Provider verwenden:
Delphi-Quellcode:
ADOCOnnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=database.mdb';

Hallo,
Danke, ich werds mal heute Abend versuchen und dann berichten.

Aber warum funktionierts am Anfang und nach OpenPictureDialog nicht mehr??
Genau dies verstehe ich nicht, sollte es aber daran liegen, dann ist gut.

MfG
Bennle

bennle 29. Aug 2005 19:59

Re: Fehler mit dem Microsoft Acces Driver
 
Zitat:

Zitat von shmia
Zitat:

Zitat von bennle
Hallo,
Ich habe den Fehler:
'[Microsoft][ODBC Microsoft Access Driver] Datei (Unbekannt)nicht gefunden'

Du verwendest den falschen Treiber.
Mit dem ODBC - Treiber gehtst du einen Umweg, der Performance und Funktionalität kostet.
Du musst den OLE-DB Provider verwenden:
Delphi-Quellcode:
ADOCOnnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=database.mdb';

Hallo,
Sorry aber das ist keine Lösung meines Problems. Denn jetzt bringt er einen Fehler in der SQL Syntax.
Kann man nicht genau sagen, was OpenPictureDialog da macht? Oder weshalb das auftritt? Denn es funktioniert ja bis der Dialog geöffnet wird.

MfG
Bennle

Bernhard Geyer 30. Aug 2005 08:19

Re: Fehler mit dem Microsoft Acces Driver
 
Zitat:

Zitat von bennle
Sorry aber das ist keine Lösung meines Problems. Denn jetzt bringt er einen Fehler in der SQL Syntax.

Und welchen? Verwendest Du persistente Feldangaben. Diese können sich ändern wenn jetzt statt über ODBC direkt auf Access zugegriffen wird.

Zitat:

Zitat von bennle
Kann man nicht genau sagen, was OpenPictureDialog da macht? Oder weshalb das auftritt? Denn es funktioniert ja bis der Dialog geöffnet wird.

Nicht besonderes. Vermutlich werden nur ein paar IE-DLL's geladen die das eigentliche Problem akut machen. Es könnte aber auch einfach nur das aktive Verzeichnis der Anwendung geändert werden. Und wenn Du eine MDB-Datei ohne Pfadangabe versuchst zu öffnen so kann er diese nicht mehr finden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:26 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