[Frage] CADORecordset
-
Guten Morgen,
Eine kurze Frage, ich habe ein Recordset und möchte mir gern eine SQL Abfrage für eine Access DB dynamisch zusammenbauen.
Gibt es eine Möglichkeit den Feldnamen irgendwie auszulesen?
Wie ich das FieldValue ermittel weiß ich bereits, jedoch müßte ich daher vorher erst den Feldnamen ermitteln. Geht dies überhaupt, falls ja, welche Ansätze müßte man verwenden?Vielen Dank im Voraus für eure konstruktiven Antworten
inva
*edit*
Ich habe eine mögliche Lösung gefunden, ob diese funktioniert weiß ich noch nicht
Aber ich möchte sie euch nicht vorenthalten:Zuerst ermittelt man mit Hilfe der CADORecordset Methode GetFieldCount() die Anzahl der pro Datensatz vorhandenen Felder.
CADORecordset stellt die Methode GetFieldInfo zur Verfügung, welche als 1. Parameter den Feldnamen ODER den Index benötigt und als zweiten einen CADOFieldInfo Pointer, in welchem alle relevanten Infos gespeichert werden.
Der Code könnte so aussehen:int iAnzFields = (*m_Rs).GetFieldCount(); int iField=0; while(iField < iAnzFields) { . . . if(m_Rs->GetFieldInfo(iField,p_FieldInfo)) { . . . } . . . iField++; }
Mehr ists nicht, rein theoretisch sollte es so klappen. In diesem Sinne, noch einen angenehmen Tag.