![]() |
Re: Firebird Datenbank - Verbindungsaufnahme
Poste mal die datenbankbeschreibung und die Abfrage.
|
Re: Firebird Datenbank - Verbindungsaufnahme
Zitat:
Hier die Filterung welche den Fehler hervorruft:
Delphi-Quellcode:
Der SQL String der SQLQuery siehst so aus:
procedure TForm1.CheckBox1Click(Sender: TObject);
var strint:string; s: string; begin query1.filtered:=false; if edit1.text<>'' then begin s:=chr(39); if checkbox1.checked=true then begin if checkbox2.checked=true then begin strint:=edit1.text; query1.filter:='oname = ' + s + strint +s; query1.filtered:=true; end else begin strint:=edit1.text; query1.filter:='oname like ' + s + strint +'%'+s; query1.filtered:=true; end; end else begin query1.filtered:=false; end; end; end;
SQL-Code:
SELECT COOBJECTS.ONAME, COPROPITEMS.PINAME, COOBJECTS.OINACTIVE, COPROPVALUES.PVNAME, COOBJECTS.OFULLNAME, COOBJECTS.OEMAIL, COOBJECTS.OCOSTCENTER, COOBJECTS.OTYPE AS Kurz
FROM ((COPROPDATA INNER JOIN COOBJECTS ON COPROPDATA.OID = COOBJECTS.OID) INNER JOIN COPROPITEMS ON COPROPDATA.PIID = COPROPITEMS.PIID) INNER JOIN COPROPVALUES ON COPROPDATA.PVID = COPROPVALUES.PVID WHERE (((COPROPITEMS.PINAME)='Components.Last User') AND ((COOBJECTS.OINACTIVE)='0') AND ((COOBJECTS.OTYPE)='M')) OR (((COPROPITEMS.PINAME)='Components.System.Manufacturer') AND ((COOBJECTS.OINACTIVE)='0')) OR (((COPROPITEMS.PINAME)='Components.System.Computer Model') AND ((COOBJECTS.OINACTIVE)='0')) OR (((COPROPITEMS.PINAME)='Components.System.Motherboard.SerialNumber') AND ((COOBJECTS.OINACTIVE)='0')) OR (((COPROPITEMS.PINAME)='Components.System.Processor.MaxSpeed') AND ((COOBJECTS.OINACTIVE)='0')) OR (((COPROPITEMS.PINAME)='Components.Storage.Memory.Total') AND ((COOBJECTS.OINACTIVE)='0')) OR (((COPROPITEMS.PINAME)='Components.Harddisk.TotalSize') AND ((COOBJECTS.OINACTIVE)='0')) ORDER BY COOBJECTS.ONAME; |
Re: Firebird Datenbank - Verbindungsaufnahme
Ist ja auch eine ganz einfache Abfrage. ;-)
Aber ohne die Berschreibung der Tabellen tue ich mich schwer: Wieviele datensätze liefert die Grundabfrage? Grundsätzlich ist das clientseitige Filtern nicht optimal.Ich würde vorschlagen die Abfrage zu parametrisieren. Zerlege mal die Abfrage in Teilabfragen um zu sehen, wo der Fehler im Detail auftaucht. |
Re: Firebird Datenbank - Verbindungsaufnahme
Zitat:
Ok werdes mal versuchen mit einer vereinfachten Query. Die Beschreibung der Tabellen zusammenzustellen ist schwierig. Sind so viele und ich habe da nur beschränkt Zugriff auf dieses Firebird Dingsbums. Ich hatte gehofft ich könnte das ganze normal wie eine SQL-Tabelle ansprechen. Bei mir auf dem PC ist ein ODBC Eintrag definiert welcher über den Firebird/Interbase Treiber auf den Server verbindet. Im Delphi mache ich dann eine Query über diese ODBC Verbindung. |
Re: Firebird Datenbank - Verbindungsaufnahme
Lad dir maldie Personalversion des
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:47 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-2025 by Thomas Breitkreuz