Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi ADO Zugriff mit Fehler (https://www.delphipraxis.net/162874-ado-zugriff-mit-fehler.html)

Kevin11 8. Sep 2011 10:36

Datenbank: Firebird • Version: 2.0 • Zugriff über: ADO

ADO Zugriff mit Fehler
 
Hallo,

ich habe eine DB-Verbindung mittels ADO auf eine .mdb-Datenbank via Acces. Habe alle Eigenschaften schon mindestens 5 mal geprüft und den Code auch mehrere male durchgegangen. Und bekomme den Fehler das die Tabelle der DB nicht gefunden wurde.

Der Code-Ausschnitt:

Delphi-Quellcode:
      Form2.ADOQuery1.SQL.Text := 'SELECT DISTINCT ("Abteilung") FROM Mitarbeiter';
      Form2.ADOQuery1.Open;
      Form2.ADOQuery1.First;

    while not Form2.ADOQuery1.Eof do
    begin
      Abteilung := Form2.ADOQuery1.FieldByName('Abteilung').Value;
      Form2.ADOQuery1.Next;

    end;
    Form2.ADOQuery1.Close;
Wo ist der Fehler? Ich verzweifel hier noch :twisted:

Union 8. Sep 2011 10:38

AW: ADO Zugriff mit Fehler
 
Wie sieht denn der Connectionstring aus?

Bernhard Geyer 8. Sep 2011 10:43

AW: ADO Zugriff mit Fehler
 
Was nun? Oben steht als Datenbank Firebird und im Text soll es dann Access sein?
Greifst du evtl. auf die Falsche Connection mit einer Query zu.

Union 8. Sep 2011 10:51

AW: ADO Zugriff mit Fehler
 
Hat er ja geschrieben:
Zitat:

ich habe eine DB-Verbindung mittels ADO auf eine .mdb-Datenbank via Acces
Aber irgendwas gefällt mir auch an dem SQL nicht, sollte es nicht heißen:

Code:
SELECT DISTINCT [Abteilung] FROM Mitarbeiter

Kevin11 8. Sep 2011 10:53

AW: ADO Zugriff mit Fehler
 
Ich hab oben aus Gewohntheit Firebird eingetragen. Access meine ich natürlich.

Der Connection String:
Delphi-Quellcode:
Form2.ADOConnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\pfad\zur\datei\datenbank.mdb;Persist Security Info=False';

Bernhard Geyer 8. Sep 2011 11:00

AW: ADO Zugriff mit Fehler
 
Zitat:

Zitat von Union (Beitrag 1122601)
Aber irgendwas gefällt mir auch an dem SQL nicht, sollte es nicht heißen:

Code:
SELECT DISTINCT [Abteilung] FROM Mitarbeiter

Dann würde er st die Spalte finden. Aber es soll ja die tabelle nicht gefunden werden.

Aber evtl. verschluckt sich hier einfach Access wegen der gemischten richtigen SQL-Syntax (' als String-Kennzeichner) und der blöden eigene Access-Syntax (" als String-Kennzeichner)

Union 8. Sep 2011 11:01

AW: ADO Zugriff mit Fehler
 
Der ConnectionString ist zwar mnimalistisch aber soeht ok aus. Hast Du mal versucht in dem SQL den Delimiter für den Flednamen auf [] zu setzen, wie in meinem vorherigen Post? Es empfiehlt sich auch das evtl. vorher in der SQL-Entwurfsansischt von Access zu testen, statt es blind in Delphi zu tippen.

DeddyH 8. Sep 2011 11:03

AW: ADO Zugriff mit Fehler
 
Zitat:

Zitat von Union (Beitrag 1122609)
Es empfiehlt sich auch das evtl. vorher in der SQL-Entwurfsansischt von Access zu testen, statt es blind in Delphi zu tippen.

Genau das wollte ich auch gerade vorschlagen. Wenn man nicht täglich mit Access zu tun hat, fällt es einem schwer, sich die merkwürdige SQL-Syntax zu merken (gerade was die eckigen Klammern angeht).

Bernhard Geyer 8. Sep 2011 11:08

AW: ADO Zugriff mit Fehler
 
Die Klammerung ist nur bei Problematischen Feldnamen (z.B. Leerzeichen) nötig.
Der Feldname "Abteilung" kann ohne Klammerung angegeben werden.

Kevin11 8. Sep 2011 11:54

AW: ADO Zugriff mit Fehler
 
Bringt auch nicht mit []. Wie kom ich in das SQL-Entwurfsmuster?

Wobei ich aber die Spalte Name in einer anderen Funktion Problemlos auslesen kann. Microsoft ist halt sehr sehr sehr komisch.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:54 Uhr.
Seite 1 von 3  1 23      

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