Re: SQL Abfrage auf Access .mdb
Ich hoffe doch, wird halt zur Laufzeit definiert, so dass das Programm verschoben werden kann.
Delphi-Quellcode:
Datasource von ADOQueryClients ist DataSourceClients, die per DataSet wiederum auf ADOTableClients verweist.DB_Path := ExtractFilePath(ParamStr(0)) + 'DATA'; ADOConnectionStringStandard := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + DB_Path + '\Database.mdb;Persist Security Info=False'; (* ADOTableClients: Definition of 'ConnectionString' and 'Table' *) with ADOTableClients do begin try ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + DB_Path + '\Database.mdb;Persist Security Info=False'; TableName := 'Clients'; Active := True; except ShowMessage('The database Database.mdb could not be found in the current directory ' + #10#13 + DB_Path) end; end; ADOQueryClients. ConnectionString := ADOConnectionStringStandard; Ich suche ja schon ne Weile, von daher kann es fast nur ein kleiner oder besonders dämlicher Fehler sein, der mir nicht auffällt. :pale: |
Re: SQL Abfrage auf Access .mdb
Zunächst einmal würde ich mir einen Breakpoint auf die Ausführung der Abfrage setzen, um zu prüfen, ob Du überhaupt dort ankommst.
Zitat:
|
Re: SQL Abfrage auf Access .mdb
Hüstel, dachte das geht so ...
Ist das wohl der Fehler? Ich wollte eben mit einer Datasource sowohl Query also auch Table abdecken. Durch diese Verbindung wähnte ich dann alles abgedeckt. Kann natürlich sein, dass das absoluter Käse ist und ich mal wieder ungenau gelesen habe. (Gefährliches Halbwissen :stupid: ) |
Re: SQL Abfrage auf Access .mdb
Nimm mal die Datasource bei der Query raus und setze die Query als Dataset in der Datasource ein (ich hoffe, ich habe das jetzt nicht auch verwechselt :mrgreen:).
|
Re: SQL Abfrage auf Access .mdb
Wo/Wie krieg ich denn jetzt meine Tabelle rein? :gruebel:
Ich kann ja nur bei einer Table auch einen tableName vergeben ... |
Re: SQL Abfrage auf Access .mdb
Wozu brauchst Du den Tablename?
|
Re: SQL Abfrage auf Access .mdb
... Stimmt, brauch ich nicht, hab ich in der SQL, schon wieder nur halb gedacht.
... Geht aber trotz allem immer noch nicht. Recordcount und damit NumberOfClients ist nach wie vor 0 Edit: Kann sein, dass ich bei der Aufrufreihenfolge was verzockt habe ... Das ganze wird während der FormCreate procedure der MainForm aufgerufen. Möglich, dass da noch nicht alles initialisiert ist ... Muss das prüfen. |
Re: SQL Abfrage auf Access .mdb
Hallo,
Delphi-Quellcode:
:Status ist doch ein String, also mach mal Hochkommas drum, könnte sein dass das einzelne Y als irgendwas anderes interpretiert wird.
SQL.Text := 'SELECT ID FROM Clients WHERE Status LIKE :Status ';
Delphi-Quellcode:
Was für ein Ergebnis bekommst Du denn ohne die Wherebedingung, dann müsste doch alles kommen, ist dem so, wenn nein, liegt das Problem nicht in der Abfrage.
SQL.Text := 'SELECT ID FROM Clients WHERE Status LIKE ' + QuotedStr('Y'));
Wie sieht das Ergebnis aus, wenn Du es nicht aus Delphi heraus absetzt (Access, Datenbankexplorer, ...)? Stephan |
Re: SQL Abfrage auf Access .mdb
Quoted String hatte ich zuvor auch schon getestet, hat aber nicht funktioniert.
Hab jetzt auch nochmal die Abfrage um die WHERE Passage erleichtert und es passiert genau ... Nichts. Das heisst, dass ich als nächstes wirklich erst mal meiner Vermutung nachgehen muss, das beim Aufruf etwas danebenläuft. Vielen Dank erst mal an alle Beteiligten. Melde mich dann mit der Erfolgsmeldung oder mit weiteren Hilferufen :stupid: |
Re: SQL Abfrage auf Access .mdb
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:39 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