Einzelnen Beitrag anzeigen

Benutzerbild von X-Dragon
X-Dragon

Registriert seit: 14. Jan 2003
Ort: Schortens
289 Beiträge
 
Delphi 6 Enterprise
 
#13
  Alt 23. Jan 2003, 10:38
Ich bin jetzt gerade dabei den Zugriff auf die DB komplett auf SQL umzustellen, allerdings funktioniert das noch nicht so ganz.

Wie muss ich das denn schreiben, das er die DBF-Datenbank auch als solche erkennt?(also beim Select Count beschwert er sich, das er mit DBF nichts anfangen kann)
Und irgendwo soll da ' zuviel oder zu wenig sein, oder so .

Code:
            SQL.Add([color=#000080]'SELECT COUNT (*) FROM Kunden.DBF'[/color]);
            ExecSQL;
            anz := Round([color=#000080]1[/color]/([color=#000080]100[/color]/(qry.Fields[[color=#000080]0[/color]].AsInteger)));
            SQL.Clear;

            SQL.Add([color=#000080]'SELECT KDNR, N1, N2, N3, PLZ, ORT'[/color]);
            SQL.Add([color=#000080]'FROM Kunden.DBF'[/color]);
            SQL.Add([color=#000080]'WHERE UPPER(N1) LIKE UPPER('[/color][color=#000080]'%'[/color] + sstr + [color=#000080]'%'[/color][color=#000080]')'[/color]);
            SQL.Add([color=#000080]'OR KDNR LIKE '[/color][color=#000080]'%'[/color] + sstr + [color=#000080]'%'[/color][color=#000080]'');
[/color]
            SQL.Add([color=#000080]'OR UPPER(N2) LIKE UPPER('[/color][color=#000080]'%'[/color] + sstr + [color=#000080]'%'[/color][color=#000080]')'[/color]);
            SQL.Add([color=#000080]'OR UPPER(N3) LIKE UPPER('[/color][color=#000080]'%'[/color] + sstr + [color=#000080]'%'[/color][color=#000080]')'[/color]);
            SQL.Add([color=#000080]'OR PLZ LIKE '[/color][color=#000080]'%'[/color] + sstr + [color=#000080]'%'[/color][color=#000080]'');
[/color]
            SQL.Add([color=#000080]'OR UPPER(ORT) LIKE UPPER('[/color][color=#000080]'%'[/color] + sstr + [color=#000080]'%'[/color][color=#000080]')'[/color]);
[edit]
hab schon mal ein Problem gelöst, eins der DB-Felder(PLZ) hat ein numerisches-Format und will sich deshalb nicht mit einem String verglechen lassen

Fehlt nur noch das COUNT ...

[edit2]
Ok, hat sich erledigt, ich verzichte auf das Count.
  Mit Zitat antworten Zitat