Announcement

Collapse
No announcement yet.

clUseServer und order by

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • clUseServer und order by

    Hallo,

    ich habe Delphi Projekt, welches überarbeitet werden soll.
    Das Projekt arbeitet mit ADO und einer Access2000 Datenbank.
    Ziel ist es die Performance der Datenzugriffe zu prüfen und zu optimieren.
    Mein Problem : Nachdem ich festgestellt habe, dass alle Datasets clUseClient verwenden, habe ich diese auf clUseServer umgestellt.
    Allerdings bekomme ich dann die folgende Exception, sobald eine Query einen "order by" enthält : "Fehler beim Initialisieren. Provider does not support the necessary interfaces for sorting or filtering"
    Ich habe ADO in der Version 2.6 installiert.
    Kann mir jemand sagen, wie dieses Problem behoben werden kann.
    Danke

  • #2
    nimm mal das <i>order by</i> raus und nutze <b>IndexFieldNames</b> oder <b>Index</b>. In einem VB-Beispiel von MS habe ich so was nämlich schon mal gesehen: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ado270/htm/mdmthseekx.asp.<p>
    Schöne Grüße, Mario Noac
    Schöne Grüße, Mario

    Comment


    • #3
      Hallo,

      hinter ACCESS verbirgt sich eine "alte" datensatzorientierte Desktop-Datenbank und keine "neue" mengenorientierte SQL-Datenbank. Daher muss die Microsoft Jet Engine die SQL-Fähigkeit simulieren. Nur dann, wenn <b>clUseClient</b> genutzt wird, stehen die erweiterten Fähigkeiten der <b>OLE DB Client Cursor Engine</b> (Filter/Sort etc.) zur Verfügung.

      Allerdings ist für ACCESS-Datenbanken die Konfiguration <b>clUseServer</b> und <b>cmdTableDirect</b> effektiver (weil die Doppel-Pufferung entfällt). Anstelle von ORDER BY muss man dann aber auf <b>IndexName</b> etc. zurückgreifen, wenn die Sortierreihenfolge umgeschaltet werden soll.

      Nur bei den "echten" SQL-Datenbanken ist die Kombination von clUseServer und ORDER BY erlaubt, da hier die Microsoft Jet Engine als Provider völlig aus dem Spiel ist

      Comment

      Working...
      X