Announcement

Collapse
No announcement yet.

SQL Server 2008 Express - Datensatz lässt sich nicht updaten

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

  • SQL Server 2008 Express - Datensatz lässt sich nicht updaten

    Hallo Leute,

    Ich habe einen Linked Server zu meiner Mysql Datenbank erstellt, alles funktioniert auch soweit ohne probleme jedoch gibts ein problem an dem ich so langsam aber sicher verzweifle.

    Ich möchte einen Datensatz updaten mit folgendem query:

    UPDATE OPENQUERY(PDA2INVLOG, 'SELECT TS, ART, GEB, PDA, PREIS, BARCODE, UPDATED FROM pricelog;') SET TS='8/29/08 03:45:01 PM', PDA='WINDOWS', PREIS='1.65', ART='70006309', GEB='002', BARCODE='0', UPDATED=1 WHERE ART='70006309' AND GEB='002';
    einmal funktioniert es und dann für eine unbestimmte zeit nicht, daraus kann ich dann mal schliessen dass es nicht am query liegt.

    Die Fehlermeldung vom SQL Server ist folgende:

    OLE DB provider "MSDASQL" for linked server "PDA2INVLOG" returned message "La ligne n'a pas pu être trouvée pour la mise à jour. Certaines valeurs ont peut-être changé depuis leur dernière lecture.".
    Msg 7343, Level 16, State 4, Line 1
    The OLE DB provider "MSDASQL" for linked server "PDA2INVLOG" could not UPDATE table "[MSDASQL]". The rowset was using optimistic concurrency and the value of a column has been changed after the containing row was last fetched or resynchronized.
    Nach langer erfolgloser google suche ist die hier meine letzte hoffnung....auf google fand ich einen msdn forum beitrag von 2005, jedoch keine lösung dazu

    danke im vorraus

  • #2
    The rowset was using optimistic concurrency and the value of a column has been changed after the containing row was last fetched or resynchronized.
    Also wenn ich das richtig interpretiere, hat sich der bzw. die Datensätze wohl während des Updatevorgangs geändert und die DB hat damit ein Problem (mysql eben...)

    Wie man damit jetzt genau umgeht, musst Du der MSSQL und auch der MySQL Doku entnehmen. Jede DB hat da so ihre Eigenheiten und Du hast gleich zwei davon

    Dim
    Zitat Tom Kyte:
    I have a simple philosophy when it comes to the Oracle Database: you can treat it as a black box and just stick data into it, or you can understand how it works and exploit it as a powerful computing environment.

    Comment


    • #3
      MSDASQL? Geht das über einen ODBC-Eintrag? Falls ja hast du in der MySQL-Onlinedoku nachgeschaut was alle für einstellungen nötigt sind im MyODBC-Treiber damit man über ADO drauf zugreifen kann?

      Comment


      • #4
        Hi,

        also die datenbank wird nur von meinem pocketpc geupdated und von sonst nichts also bezweifle ich dass die Datensätze sich irgentwie ändern können....

        das ganze geht über einen odbc-eintrag ms sql server -> odbc -> mysql. Ausserdem benutze ich kein ADO mehr sondern benutzen den SQLClient von .NET...SELECT querys funktionieren ohne probleme, und andere update queries (in denen ich nur UPDATED=1 setzen) funktionieren auch immer....

        Comment


        • #5
          Dein Link zum MySQL-Server benutzt ADO.

          Comment


          • #6
            Ok, aber select query funzen, und wie gesagt updates auch, wenn ich jetzt zb. das query in mysql laufen lasse, klappts, danach test ich mein query in mssql dann klappts auch! lasse ich das query nochmal in mssql laufen dann bekomm ich die fehlermeldung

            Comment

            Working...
            X