select where nach order by in ACCESS geht nicht



  • Hi zusammen ich spreche eine ACCESS-DB über die ODBC Schnittstelle mit SQL-Querys an. Wenn ich nun die DB mit einem "order by" öffne funktioniert das wunderbar! Nur will ich danach etwas filtern, mit "where" dann sucht er mir immer in der Spalte nach der ich ge"order"t hab! wie kann ich nun Filtern, so dass er mir auch wirklich die komplette Tabelle nach dem where durchsucht?

    Falls benötigt ich programmiere mit VC++ und filtere mit m_strFilter (oder macht der das "falsch"? dann müsste ich ja wieder zurück ins MFC-Forum!)



  • Es wäre sicherlich hilfreich, wenn Du das Statement anzeigen würdest.

    Was heist where NACH order by 😕

    SELECT * ORDER BY SPALTE1 WHERE ... kann m. E. nicht funktionieren, oder führt zum beschriebenen Ergebnis.



  • Es sollte nach einem Openstatement das so ähnlich aussieht wie

    Select * from XXX order by zzz
    

    im späteren Source dann auf meinen Recordset ein Filter ausgeführt werden
    der in VC++ in etwa so aussieht:

    bestSet.m_strFilter.Format(_T("([Lieferant] = %d) AND ([Art] = %d)"), f_lLiefID, f_nArt);
    

    Das Problem ist dass MFC daraus tatsächlich das von dir oben genannte macht. wenn man allerding die order by geschichte mit m_strSort macht, dann kann man auch ganz oben im source schreiben m_strSort und irgendwo anders dann m_strFilter weil er sich die automatisch richtig zusammen baut. allerdings wenn ch Order by und m_strSort mach verrafft er es!
    Wenn es genauer interessiert hier im MFC-Forum!


Anmelden zum Antworten