Access
 sql >> Datenbank >  >> RDS >> Access

BEHOBEN:Microsoft Office 365 Version 2009 kann Ihre Datenbankanwendung beschädigen

Microsoft Office 365 Version 2009 kann Ihre Datenbankanwendung beschädigen

Microsoft hat berichtet, dass sie die Funktion deaktiviert haben, wodurch die Notwendigkeit eines Rollbacks der Version vermieden werden sollte. Das neue Feature wird in der für Ende Oktober 2020 geplanten Version 2010 zur Verfügung gestellt. In der Zwischenzeit wird es deaktiviert und bleibt es bis dahin. Es sollte keine Notwendigkeit bestehen, auf eine andere Version zu wechseln, Version 2009 sollte nicht mehr mit datetime2 als Date/Time Extended verknüpft werden. Wenn Sie betroffen sind, versuchen Sie, Ihren Zugriff neu zu starten, und überprüfen Sie, ob Sie mit Ihren Office-Updates auf dem neuesten Stand sind, und verknüpfen Sie Tabellen neu. Es sollte dann korrigiert werden.

Wenn die Funktion in Version 2010 aktiviert ist, wirkt sie sich nicht auf das Verhalten vorhandener Datenbanken aus, es sei denn, Sie fügen einer lokalen Tabelle explizit eine Spalte „Datum/Uhrzeit erweitert“ hinzu oder gehen zu „Extras/Optionen/Aktuelle Datenbank“ und überprüfen „Support Date /Time Extended (DateTime2) Data Type for Linked/Imported Tables“-Option.

In beiden Fällen erhalten Sie eine Warnung, dass dadurch die Datenbankversion aktualisiert wird, um den neuen Typ zu verarbeiten. Sie können auch lokale erweiterte Datum/Uhrzeit-Spalten hinzufügen, aber lassen Sie die Option deaktiviert, wenn Sie Datetime2 weiterhin als Datum/Uhrzeit mit SQL verknüpfen möchten.

Wenn beim Verknüpfen mit einer entfernten Tabelle die Option nicht aktiviert ist, werden datetime2(0) und datetime2(7) beide als Date/Time verknüpft, und wenn die Option gesetzt ist, werden sie beide als Date/Time Extended verknüpft.

Aus historischen Gründen wird der ursprüngliche Beitrag unten belassen. Um jedoch zu betonen, dass Sie kein Rollback durchführen müssen. Wenn Sie Probleme oder Fragen haben, lassen Sie es uns wissen!

Originalbericht

In Version 2009 führte Microsoft einen neuen Datentyp ein, Date/Time Extended, der eine größere Kompatibilität mit dem datetime2-Datentyp von SQL Server bieten würde.

Leider bedeutet ein Upgrade auf Version 2009, dass, wenn Sie eine Access-Anwendung haben, die mit einer SQL Server-Datenbank verknüpft ist, und eine der verknüpften Tabellen ein datetime2-Feld hat, beim nächsten erneuten Verknüpfen mit der Tabelle der Datentyp von „Date /Time“ in „Date/Time Extended“ ändern, wodurch der vorhandene Code beschädigt werden kann, der erwartet, dass er mit dem Datentyp „Date“ von VBA und dem ursprünglichen Datentyp „Date/Time“ von Access funktioniert. VBA hat keine Möglichkeit, den neuen Datentyp „Date/Time Extended“ von Access darzustellen, außer als String.

Um dieses Problem zu vermeiden:

1) Vergewissern Sie sich, dass Sie nicht auf dem aktuellen Kanal sind. Wir empfehlen, dass Sie sich im halbjährlichen Kanal befinden.
2) Wenn Sie sich im aktuellen Kanal befinden, überprüfen Sie, ob Sie Build 2008 oder früher verwenden. Deaktivieren Sie in diesem Fall Ihre Office-Updates, um eine Aktualisierung auf Build 2009 zu vermeiden.
3) Wenn Sie Current und Build 2009 verwenden, können Sie zu 2008 zurückkehren, indem Sie die Eingabeaufforderung als Administrator ausführen:


cd %programfiles%\Common Files\Microsoft Shared\ClickToRun
officec2rclient.exe /update user updatetoversion=16.0.13127.20508

So überprüfen Sie Ihre aktuelle Version:

Als Alternative zum Deaktivieren von Updates empfehlen wir Ihnen, Ihren Kanal von „Monatlich“ auf „Halbjährlich“ zu ändern, was bedeutet, dass Sie die fehlerhaften Updates nicht so schnell erhalten und Microsoft sie hoffentlich behoben hat, bevor sie in den anderen übergehen Kanäle.

Ändern des Office 365-Kanals

Um Ihren Kanal zu ändern, sollte dies funktionieren, aber in meinen Tests hat es nicht funktioniert:

cd %programfiles%\Common Files\Microsoft Shared\ClickToRun
OfficeC2RClient.exe /changesetting Channel=SemiAnnual
OfficeC2RClient.exe /Benutzer aktualisieren

Wenn dies bei Ihnen auch nicht funktioniert hat, besteht eine alternative Methode darin, das Office-Bereitstellungstool mit einer XML-Datei zu verwenden.

1. Laden Sie das Tool hier herunter.
2. Führen Sie die heruntergeladene EXE-Datei aus und wählen Sie einen Ordner aus, um den Inhalt zu extrahieren. Erstellen Sie beispielsweise einen Ordner „C:\OfficeDeployment“ und zielen Sie darauf ab.
3. Erstellen Sie eine neue Textdatei und kopieren Sie den folgenden Inhalt:

<Configuration>
  <Add OfficeClientEdition="64" Channel="SemiAnnual">
    <Product ID="O365ProPlusRetail" >
      <Language ID="en-us" />
    </Product>
  </Add>
</Configuration>

4. Speichern Sie die Textdatei unter „C:\OfficeDeployment\config.xml“
5. Öffnen Sie eine Eingabeaufforderung als Administrator
6. Führen Sie die Befehle aus:

cd C:\OfficeDeployment
setup.exe /configure config.xml

Sie sollten einen Dialog sehen, der anzeigt, dass Office installiert wird. Warten Sie einige Minuten, bis die Installation abgeschlossen ist, und überprüfen Sie dann, ob sich Ihr Kanal geändert hat.

Wir stehen in Kontakt mit Microsoft und halten Sie auf dem Laufenden.