Hallo,
ich habe folgendes Problem:
Aus einer Access-Datenbank möchte ich einen Integerwert ziehen über die Funktion "Lookup".
Ich habe einen String-Wert nach dem ich in der Tabelle suche. Zu diesem Eintrag gibt es einen Integerwert, den ich benötige.
Meine bisherige Vorgehensweise anhand meinen Codes:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| var name : String; art : Integer; begin name := lbox_items.Items[lbox_items.ItemIndex];
with ADO_Items do begin art := Lookup('Name', name, 'Art'); end;
ShowMessage(name + ' ' + IntToStr(art)); end; |
Jetzt bekomme ich immer folgende Fehlermeldung:
"Eine Variante des Typs (Null) konnte nich in den Typ (Integer) konvertiert werden"
Wenn ich den Code wie folgt benutze, bekomme ich eine korrekte Ausgabe meines gesuchten Wertes:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| var name : String; art : Integer; begin name := lbox_items.Items[lbox_items.ItemIndex];
with ADO_Items do begin art := Lookup('Name', 'Test', 'Art'); end;
ShowMessage(name + ' ' + IntToStr(art)); end; |
Ergebnis ist hier eine Messagebox mit dem Inhalt:
"Test 1"
Wo liegt denn hier nun mein Fehler? Irgendwie muss ich die Variable "name" ja noch weiter bearbeiten, damit er den Eintrag in meiner Tabelle findet.
Moderiert von
Narses: Topic aus Sonstiges (Delphi) verschoben am Mo 28.03.2011 um 16:59