![]() |
Delphi-Version: 7
DBGrid durchsuchen
Ich möchte eine Datenbank durchsuchen. Es ist eine DBGrid Datenbank. Zum suchen nutze ich ein Edit und einen Button zum bestätigen. Wenn ich also in das Edit Peter eingebe dann möchte ich das ich dann Peter´s Eintrag sehe. Hier ist mein QC:
Delphi-Quellcode:
Das komische ist aber das wenn ich auf suchen drücke keine Exception oder so kommt.
if Form2.Table1.Locate('Name/Firma', KSuchenEdt.Text, []) then //need tbd
Form3.DBGrid1.Show; |
AW: DBGrid durchsuchen
Warum sollte eine Exception kommen, wenn kein entsprechender Eintrag gefunden wurde wird False zurückgegeben.
|
AW: DBGrid durchsuchen
Da hast du Recht. Aber selbst wenn ich etwas eingebe was es gibt passiert nix und das will ich ja nicht. Dann will ich den Eintrag sehen..
|
AW: DBGrid durchsuchen
Steht der Suchbegriff auch genau so wie Du ihn eingegeben hat in der Datenbank?
|
AW: DBGrid durchsuchen
Ja. Die Datenbank wird aber trotzdem nicht geöffnet.
|
AW: DBGrid durchsuchen
Diese muss auch geöffnet sein, um sie zu Durchsuchen oder meinst Du das Grid?
Mit genau identisch meine ich Groß-/Kleinschreibung, Leerzeichen, Länge usw. |
AW: DBGrid durchsuchen
Delphi-Quellcode:
Ich meine das Grid. Diese ist bei mir auf Form3
if Form2.Table1.Locate('Name/Firma', KSuchenEdt.Text, []) = true then
begin Form3.DBGrid1.Show; end; |
AW: DBGrid durchsuchen
Ändere mal auf
Delphi-Quellcode:
if Form2.Table1.Locate('Name/Firma', KSuchenEdt.Text, [loCaseInsensitive, loPartialKey] ) then
|
AW: DBGrid durchsuchen
Zitat:
|
AW: DBGrid durchsuchen
Doch, sollte D7, aber dein Spaltenname stellt das Problem dar: Du hast ein Sonderzeichen im Namen, da fängt der Datenbanktreiber an zu denken und will rechnen...
Du hast uns auch nicht mitgeteilt, welche Datenbank überhaupt darunter liegt... Grüße Mikhal |
AW: DBGrid durchsuchen
Müsste es schon in D7 gegeben haben, sonst wäre der Parameter ja überflüssig. Was sagt die D7 Hilfe dazu?
|
AW: DBGrid durchsuchen
Die Delphi Hilfe zeigt es mir an aber ich muss anscheinend irgendwie eine Variable dafür deklarieren. Weil ohne weiteres kennt er das nicht. Datenbank müsste Paradox 7 sein. bin mir nicht sicher. Habe nach dem DelphiTreff einsteiger Tutorial gearbeitet.
|
AW: DBGrid durchsuchen
Nein eine Variable sollte nicht motwendig sein.
|
AW: DBGrid durchsuchen
Und ich komme nochmal auf den Spaltennamen zurück: Der Slash hat im Spaltennamen nichts zu suchen!
Grüße Mikhal |
AW: DBGrid durchsuchen
Dann ist es sehr komisch weil er es nicht kennt.. Es ist eine Paradox Tabelle von TTable. Falls das hilft
Dann muss ich die Tabelle nochmal bearbeiten. Kann man das wenn sie erstellt ist? Hab es bisher noch nicht hin bekommen. Weil meine erste Spalte 'Name/Firma' heißt |
AW: DBGrid durchsuchen
Kann es vielleicht sein, dass "Name/Firma" nur die Spalten-Überschrift in deinem DBGrid ist?
Für das Locate muss du den Feldnamen der Tabelle nehmen. Also die Bezeichnung, die du beim Anlegen der Paradox-Tabelle vergeben hast. |
AW: DBGrid durchsuchen
Nein so heißt die erste Spalte die ich gemacht habe. Habe Name/Firma, Email und Telefonnummer
|
AW: DBGrid durchsuchen
War bei Paradox etwas aufwendiger: Neue Spalte anlegen, Werte aus der alten Spalte in die neue Spalte kopieren, alte Spalte löschen. Wo die Spalte in der Definition steht ist wurscht, Hauptsache sie existiert!
Aber ich muss anmerken, dass ich seit etwa 20 Jahren nicht mehr mit Paradox-Datenbanken arbeite. Grüße Mikhal |
AW: DBGrid durchsuchen
Ist denn Form3 sichtbar?
Was soll Form3.dbgrid1.show bewirken? |
AW: DBGrid durchsuchen
Du brauchst noch die Unit "DB".
Also im Source unter uses noch DB mit eintragen. |
AW: DBGrid durchsuchen
Zitat:
Naja das Programm ist nur zur Übung mit Datenbanken also weniger wichtig welche Komponenten ich da nehme. |
AW: DBGrid durchsuchen
Es gibt bei D7 eine Datenbankoberfläche, mit der du Tabellen anlegen kannst. Sollte im Menü Tools zu finden sein, wenn ich mich recht erinnere.
Dort wählst du die Tabelle aus und kannst dann Felder / Spalten hinzufügen, löschen... Aber du machst im Moment einen viel größeren Fehler in der Betrachtung des Problems: Das DBGrid dient ausschließlich der Visualisierung und Bearbeitung der Daten deiner Tabelle. Aber die Funktionalitäten wie Schreiben, Lesen und Suchen wird auf Datenbank-Ebene mit TTable oder TQuery realisiert. Grüße Mikhal |
AW: DBGrid durchsuchen
Das DBGrid ist auf ReadOnly. Eingaben mache ich via DBEdits und DBNavigator. mit TTable müsste das sein.
Ich werde jetzt erstmal Wochenende machen. Wünsche euch ein gutes Wochenende. Werde mich Montag wieder damit befassen. |
AW: DBGrid durchsuchen
Zitat:
Gruß K-H |
AW: DBGrid durchsuchen
Hallo,
DBD.Exe hiess der Datenbank-Desktop. Heiko |
AW: DBGrid durchsuchen
Wo bleibt eigentlich der Aufschrei bezüglich der verwendeten BDE und Paradox?
|
AW: DBGrid durchsuchen
Zitat:
Wobei m.E. "Weg von BDE/Paradox" die beste Hilfestellung ist. Oder es liegt daran das man keine BDE mehr in der IDE hat und dann schön genüsslich sagen kann: "Wir haben's dir doch gesagt das du da was machen musst". |
AW: DBGrid durchsuchen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:10 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