CDatabase CRecordset Feldreihenfolge



  • Hallo,

    ich erhalte einen Fehler: ungültiger Descriptorindex,

    wenn ich bei einer Tabelle bestehend aus Feld1, Feld2, Feld3

    die Felder in der falschen Reihenfolge hole:

    rs.GetFieldValue("Feld1",s1)
    rs.GetFieldValue("Feld3",s3)
    rs.GetFieldValue("Feld2",s2)

    so klappt es:

    rs.GetFieldValue("Feld1",s1)
    rs.GetFieldValue("Feld2",s2)
    rs.GetFieldValue("Feld3",s3)

    Ist dies normal so, weil ich nirgendwo gelesen habe, dass ich die Reihenfolge beachten muss

    Das haut mich etwas vom Hocker!



  • Ich kenne das von den ODBC Funktionen:

    http://msdn.microsoft.com/en-us/library/windows/desktop/ms715441(v=vs.85).aspx

    If the driver does not support extensions to SQLGetData, the function can return data only for unbound columns with a number greater than that of the last bound column. Furthermore, within a row of data, the value of the Col_or_Param_Num argument in each call to SQLGetData must be greater than or equal to the value of Col_or_Param_Num in the previous call; that is, data must be retrieved in increasing column number order

    Falls CRecordSet intern über diese Funktionen arbeitet, erklärt das das Verhalten.



  • ja danke, das erklärt das Verhalten.
    Ich frage SQL Server 2008 ab


Log in to reply