Announcement

Collapse
No announcement yet.

Versionskonflikt?

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

  • Versionskonflikt?

    Ich habe unter W2k eine Anwendung erstellt, die auf ADO basiert.<br>
    Wenn ich diese nun z.B. unter Win 98 oder Win ME starte und einen Datensatz verändern möchte, erhalte ich die Fehlermeldung<br><br>
    <pre>Die ausgew&auml;hlte Sortierreihenfolge wird nicht vom Betriebssystem unterst&uuml;tzt.</pre>
    Mache ich irgendwas so dämlich falsch oder weist das in der Tat auf einen Versionskonflikt hin und wie wäre dieser zu beheben?

  • #2
    Hallo,

    so eine Fehlermeldung ist mir noch nicht untergekommen. Wie sieht ein kleines Beispielprojekt im Sourcecode aus, mit dem dieser Fehler reproduzierbar ist

    Comment


    • #3
      Kann ich es Dir als zip-file schicken

      Comment


      • #4
        Kann ich dann euer Ergebnis haben??
        Würde mich interessieren was da los ist!

        BIN

        Comment


        • #5
          Hallo Peter,

          ja, gegen ein kleines ZIP (indem nur die Sourcecode-Dateien, aber keine DCUs und EXEs sind) ist nichts einzuwenden. Die eMail-Adresse »[email protected]« kann hier im Forum auch über einen Klick auf meinen Namen abgefordert werden

          Comment


          • #6
            Hallo Andreas,

            vielen Dank für die Hilfe.<br><br>
            -----------------------<br>
            a) alle Datenmengen verwenden den Wert clUseServer für die Eigenschaft CursorLocation, da dies im Fall von ACCESS-Datenbanken der von Microsoft vorgesehene Zugriffsmodus ist (im Gegensatz zu allen echten SQL-Datenbanken).
            <br>
            b) alle TADODataSet-Instanzen verwenden den Wert cmdTableDirect für die Eigenschaft CommandType, da dies im Fall von MS ACCESS-Datenbanken wiederum die von Microsoft vorgesehene Zugriffsart ist.
            <br>
            -----------------------
            <br>
            Ich habe alles entsprechend geändert nur blieb mir leider der erhoffte Erfolg versagt. Ich werde noch irre damit.
            <br&gt

            Comment


            • #7
              Hallo,

              in der Fassung, die ich als eMail-Anhang zurückgeschickt habe, konnte ich die Tabellen sowohl unter Windows 98 SE als auch unter Windows 2000 SP1 öffnen. Allerdings habe ich bei allen Datenmengen die Index-Angabe (Anzeigesortierung) im Objektinspektor entfernt (siehe eMail-Text) - zumindestens damit sollte es in jedem Fall gehen.

              Als ich mir die Tabellenstrukturen in ACCESS 2000 angeschaut haben, war bei einigen Zeichenspalten die Unicode-Komprimierung eingeschaltet und bei anderen nicht. Eventuell ist die Datenbank zu häufig umstrukturiert worden - ich würde einen Test mit einer frisch unter Windows 98 angelegten ACCESS-Datenbank wiederholen

              Comment


              • #8
                Hallo,

                einen Anhang hatte ich leider nicht. Ist wohl unterwegs im Datennirvana gelandet?!<br>
                Jedoch auch nach der Entfernung der Index-Angabe besteht das Problem weiterhin

                Comment


                • #9
                  eMail mit Anhang habe ich gerade abgeschickt

                  Comment


                  • #10
                    SUPER!<br>
                    Vielen Dank, jetzt geht's!!

                    Comment


                    • #11
                      jetzt ist doch noch ein Problem aufgetaucht, und zwar mit TADOQuery. Ich wollte mir den Umstieg von ODBC/BDE nach ADO einfach machen und habe TQuery durch TADOQuery ersetzt (Viele SQL-Anweisungen werden zur Laufzeit generiert).
                      Dabei tritt wieder das alte Problem auf. Was gibt es denn hier für Besonderheiten

                      Comment


                      • #12
                        Mann sollte beim Umstieg von BDE nach ADO anstatt der Kompatiblitätskomponenten TADOQuery und TADOTable die Komponente TADODataSet verwenden. Man hat zwar mehr Arbeit beim Umstellen, Erspart sich aber Problem durch die zusätzliche Zwischenschicht welche TADOQuery bzw. TADOTable darstellen. Damit ist auch die verwendung von zur Laufzeit generierten SQL-Anweisungen möglich

                        Comment


                        • #13
                          jetzt ist doch noch ein Problem aufgetaucht, und zwar mit TADOQuery. Ich wollte mir den Umstieg von ODBC/BDE nach ADO einfach machen und habe TQuery durch TADOQuery ersetzt (Viele SQL-Anweisungen werden zur Laufzeit generiert).
                          Dabei tritt wieder das alte Problem auf. Was gibt es denn hier für Besonderheiten

                          Comment


                          • #14
                            Aha. Na, wenn's mir nicht erspart bleiben soll - bitte. Jetzt habe ich TADOQuery durch TADODataSet ersetzt und CursorLocation auf clUseServer gestellt. cmdTableDirect geht ja nicht, weil die Datenauswahl zur Laufzeit geändert wird. Das Problem
                            <pre>Die ausgewählte Sortierreihenfolge wird nicht vom Betriebssystem unterstützt</pre>taucht aber weiterhin auf, wenn ich versuche die Anwendung unter Win 9.x laufen zu lassen. Beim Beenden kriege ich dann auch noch eine "Externe Exception 80000003" serviert.
                            Es kann doch nicht wahr sein, dass die Anwendungserstellung mittels ADO zu solchen Inkompatibilitäten führt und einem das Leben schwer macht

                            Comment


                            • #15
                              Wurde auf allen verwendeten BS die gleiche MDAC-Version installiert? Nur unter Windows 2000 wird ADO standardmäßig mitgeliefert (Version 2.5, bei W2K SP1 wird MDAC 2.5 SP1 installiert). Die anderen BS müssen durch ein Setup (zu finden unter http://www.microsoft.com/data/download.htm) aktuallisiert werden.

                              Daneben gibt es ein Tool von MS (http://download.microsoft.com/download/dasdk/install/1.0/WIN98/EN-US/cc.exe) mit welchen man seine installierte Version von MDAC überprüfen kann

                              Comment

                              Working...
                              X