Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Array gezielt nach Einträge durchsuchen
Delete - Mo 20.04.09 16:45
Titel: Array gezielt nach Einträge durchsuchen
Hallo zusammen,
Ich habe ein mehrdimensionales Array in dem ich zum Beispiel Auftragnummern, Personalnummern, Positionsnummern, Stunden gespeichert habe.
Nun möchte ich wie bei einer MySQL-Datenbank das Array gezielt auslesen.
Bei MySQL gibt es ja den Befehl "Select * From Datenbank WHERE Positionsnummer=3".
Also einfach einen Befehl/ Funktion oder etwas in die Richtung, mit der ich meine Einträge im Array gezielt nach einem bestimmten Wert auslesen kann.
Habe schon gesucht aber irgendwie noch nicht das gefunden, was ich brauch.
Danke
Moderiert von
Narses: Topic aus Sonstiges (Delphi) verschoben am Mo 20.04.2009 um 18:20
jakobwenzel - Mo 20.04.09 17:01
was vordefiniertes gibt es da meines Wissens nicht.
Letztendlich wird es aber darauf hinauslaufen dass du in einer Schleife alle Werte durchläufst und jeweils guckst ob der Wert passt.
Wenn das zu langsam ist kannst du erstmal nach dem Wert sortieren, was aber schwierig ist, wenn du mehrere Werte prüfen musst. Alternativ kannst du für eine Spalte alle möglichen Werte in einem Array speichern und dazu dann alle Einträge der Originaltabelle, also sowas:
Delphi-Quelltext
1: 2: 3: 4: 5:
| TIndexEntry = record value:TXYZ; references:array of Integer; end; Indices:array of TIndexEntry |
Damit bist du dann auf dem besten Wege dir deine eigene Datenbank zu schreiben - viel Glück :D
DaVinciFF7 - Mo 20.04.09 21:33
Mach es doch mit ner For-Schleife
Hab jetzt gerade nur die Java Syntax im Kopf, aber wenn ich mich recht erinnere ist es in Pascal ähnlich
Bei Java sieht das so aus:
Quelltext
1: 2: 3:
| int i;
for (i := 0; i < array.length; i++) |
und dann halt ne if klammer
Quelltext
1: 2:
| if array[i] = gesucht blablubb |
Wie gesagt..Ich weiß nicht, ob die Syntax stimmt, aber vom Prinzip her ist es so glaub ich am einfachsten.
ffgorcky - Fr 01.05.09 15:50
Hallo Dyon,
die Spalten kannst Du ja - soweit ich mich recht erinnere - mit "case of" zuordnen:
Delphi-Quelltext
1: 2: 3:
| case momentanGefragteSpalte of 3:SpaltenName:='Positionsnummer' 4:SpaltenName:='Name' |
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!