Spaltennavigation in Datenbank



  • Hallo,

    gibt es eine Möglichkeit, zwischen den Spalten (anstatt Zeilen) einer Datenbank über eine Schleife zu navigieren, sowas ähnlich wie ->MoveNext auf Spaltenbasis also?
    ich möchte umgehen, dass jede Spalte einzeln über die Membervariable angesteuert werden muss. also im Code ungefähr so:

    while (!letzte spalte)
       speicher Wert
       gehe zur nächsten Spalte
    

    vielen dank schonmal,
    daniel



  • Ich glaub das geht nicht wirklich.
    Wie stellst Du Dir das vor?
    Spalten in einer Datenbank sind doch ziemlich statisch und eignen sich gut um
    in einem Recordset Membervariablen zu vergeben.
    Aber wenn Du von Spalte zu Spalte wechseln willst, dann mußt Du doch die Daten in jeder Zeile ansprechen, um an die Daten ranzukommen. Wie willst Du das
    anstellen??? Stell Dir vor, Du fügst eine Zeile hinzu. Und dann??
    Wo kriegst Du die Daten dieser Zeile her??

    An Deiner Stelle würd ich mir das ganze nochmal genau überlegen.

    Ciao
    Hermie



  • das problem der membervariablen ist ja, dass nur schwierig eine schleife einzurichten ist. für eine datenbank mit bspw 45 spalten ist eine navigation mit membervariablen eher umständlich, vor allem, wenn man für eine zeile jede spalte abfragen möchte.
    ein beispiel:
    suche die spalten, die in zeile xy den wert 0 haben.

    das problem des einfügens dürfte das eigentlich nicht betreffen, zeilenweise kann man ja immer noch über das recordset navigieren und einfügen. oder habe ich da jetzt einen denkfehler.



  • Kommt auf die Schnittstelle zur Datenbank an (ODBC, ADO, OLE DB, DAO, whatever).

    Mit den mir bekannten Schnittstellen ist Navigaiton über die Spalten "ein bißchen" schwieriger, aber möglich.



  • das ist eine access-datenbank über odbc



  • Ist nur eine ungetestete Idee:

    Ich nehme mal an, dass es alles Zahlenwerte sind. Also long.
    Nun müßte es doch möglich sein, ein long-Array anzulegen und das DoFieldExchange entsprechend umzubiegen.


Anmelden zum Antworten