Verschieben von Access-Daten in eine SQL Server-Datenbank mithilfe des Upsizing-Assistenten

Die meisten Datenbankanwendungen werden im Laufe der Zeit immer umfangreicher und komplexer und müssen immer mehr Benutzer unterstützen. Daher ist möglicherweise auch für Ihre Microsoft Office Access-Anwendung irgendwann einmal der Zeitpunkt gekommen, zu dem Sie daran denken, ein Upsizing in eine Microsoft SQL Server-Datenbank durchzuführen, um die Leistungsfähigkeit, die Skalierbarkeit, die Verfügbarkeit, die Sicherheit, die Zuverlässigkeit und die Wiederherstellbarkeit zu optimieren.

Inhalt dieses Artikels

Informationen zum Upsizing einer Microsoft Office Access-Datenbank

Verwenden des Upsizing-Assistenten

Wie ein Upsizing von Datenbankobjekten erfolgt

Informationen zum Upsizing einer Microsoft Office Access-Datenbank

Beim Upsizing werden einige oder alle Datenbankobjekte aus einer Access-Datenbank in eine neue oder eine vorhandene SQL Server-Datenbank oder ein neues Microsoft Access-Projekt (*.adp) migriert.

Vorteile des Upsizings einer Datenbank nach SQL Server

  • Hohe Leistung und Skalierbarkeit    In vielen Fällen bietet SQL Server mehr Leistungsfähigkeit als eine Access-Datenbank. SQL Server unterstützt zudem auch sehr umfangreiche Datenbanken im Terabytebereich und damit also weit größere Datenbanken als die gegenwärtig für eine Access-Datenbank unterstützte Größenordnung von 2 Gigabyte. Daneben ist auch die Arbeitsweise von SQL Server sehr effizient, da Abfragen parallel verarbeitet werden (indem mehrere systemeigene Threads innerhalb eines einzigen Prozesses zum Verarbeiten von Benutzeranforderungen verwendet werden), und auch wenn weitere Benutzer hinzukommen, sind die Anforderungen im Hinblick auf mehr Speicherkapazität nur minimal.

  • Bessere Verfügbarkeit    SQL Server ermöglicht eine dynamische inkrementelle oder vollständige Datensicherung der Datenbank, während diese verwendet wird. Dementsprechend müssen Sie die Benutzer nicht zum Verlassen der Datenbank auffordern, bevor Sie eine Datensicherung erstellen können.

  • Verbesserte Sicherheit    Unter Verwendung einer vertrauenswürdigen Verbindung kann SQL Server in die Windows-Systemsicherheit integriert werden, wodurch ein einziger integrierter Zugriff auf das Netzwerk und die Datenbank ermöglicht wird und damit die Vorteile beider Sicherheitssysteme genutzt werden. Auf diese Weise lassen sich komplexe Sicherheitsschemas erheblich einfacher verwalten.

  • Sofortige Wiederherstellbarkeit    Für den Fall eines Systemausfalls (wie einem Betriebssystemabsturz oder einem Stromausfall) verfügt SQL Server über einen automatischen Wiederherstellungsmechanismus, mit dem in wenigen Minuten der letzte als ordnungsgemäß bekannte Konsistenzzustand wiederhergestellt wird, ohne dass der Datenbankadministrator eingreifen muss.

  • Serverbasierte Verarbeitung    Wenn SQL Server in einer Client-/Serverkonfiguration verwendet wird, reduziert sich der Netzwerkverkehr, indem Datenbankabfragen auf dem Server verarbeitet werden, bevor die Ergebnisse an den Client gesendet werden. Die Verarbeitung auf dem Server ist in der Regel erheblich effizienter, insbesondere, wenn mit großen Datensätzen gearbeitet wird.

    Ihre Anwendung kann zudem auch mit Benutzerdefinierte Funktion, Gespeicherte Prozedur und Trigger arbeiten, um die Anwendungslogik, Geschäftsregeln und -richtlinien, komplexe Abfragen, Gültigkeitsprüfung von Daten sowie Code zur referenziellen Integrität zentral auf dem Server abzulegen und gemeinsam zu nutzen, damit diese Prozesse nicht auf dem Client erfolgen müssen.

Methoden zum Upsizing

Der Upsizing-Assistent verschiebt Datenbankobjekte und die hierin enthaltenen Daten von einer Access-Datenbank in eine neue oder bereits vorhandene SQL Server-Datenbank.

Es gibt drei Möglichkeiten zur Verwendung des Upsizing-Assistenten:

  • Sie führen ein Upsizing aller Datenbankobjekte von einer Access-Datenbank in ein Access-Projekt durch, damit Sie eine Client-/Serveranwendung erstellen können. Diese Vorgehensweise setzt einige zusätzliche Anwendungsänderungen sowie Änderungen am Code und an komplexen Abfragen voraus.

  • Sie führen lediglich ein Upsizing von Daten oder Datendefinitionen von einer Access-Datenbank in eine SQL Server-Datenbank durch.

  • Sie erstellen ein Access-Datenbank-Front-End zu einem SQL Server-Datenbank-Back-End, damit Sie eine Front-End-/Back-End-Anwendung erstellen können. Diese Vorgehensweise erfordert nur minimale Anwendungsänderungen, da der Code weiterhin das ACE verwendet.

Vor dem Upsizing einer Access-Datenbank

Erwägen Sie die nachstehenden Maßnahmen, bevor Sie ein Upsizing Ihrer Access-Datenbank in eine SQL Server-Datenbank oder ein Access-Projekt durchführen:

  • Sichern der Datenbank     Obwohl der Upsizing-Assistent keine Daten oder Datenbankobjekte aus der Access-Datenbank entfernt, empfiehlt es sich, eine Datensicherung der Access-Datenbank zu erstellen, bevor Sie ein Upsizing durchführen.

  • Sicherstellen von ausreichend Festplattenkapazität     Das Gerät, auf dem sich die Datenbank nach dem Upsizing befinden soll, muss über ausreichend Festplattenkapazität verfügen. Der Upsizing-Assistent ist am leistungsfähigsten, wenn mehr als genug Festplattenkapazität zur Verfügung steht.

  • Erstellen von eindeutigen Indizes     Eine verknüpfte Tabelle muss über einen eindeutigen Index verfügen, damit sie in Access aktualisiert werden kann. Der Upsizing-Assistent kann ein Upsizing eines vorhandenen eindeutigen Index durchführen, kann jedoch keinen eindeutigen Index erstellen, wenn ein solcher nicht vorhanden ist. Wenn Sie also in der Lage sein möchten, Ihre Tabellen zu aktualisieren, müssen Sie jeder Access-Tabelle vor dem Upsizing einen eindeutigen Index hinzufügen.

  • Sicherstellen der geeigneten Berechtigungen für die SQL Server-Datenbank

    • Für das Upsizing einer vorhandenen Datenbank benötigen Sie die Berechtigungen CREATE TABLE und CREATE DEFAULT.

    • Zum Erstellen einer neuen Datenbank benötigen Sie die Berechtigung CREATE DATABASE sowie SELECT-Berechtigungen für die Systemtabellen in der Masterdatenbank.

Der Access 2007-Upsizing-Assistent ist für die Zusammenarbeit mit Microsoft SQL Server 2000 und SQL Server 2005 optimiert.

Seitenanfang

Verwenden des Upsizing-Assistenten

  • Klicken Sie auf der Registerkarte Datenbanktools in der Gruppe Daten verschieben auf SQL Server.

    Der Upsizing-Assistent wird gestartet.

Schritt 1: Auswählen, ob das Upsizing in eine vorhandene Datenbank oder in eine neue Datenbank erfolgen soll

Schritt 2: Auswählen, für welche Tabellen das Upsizing erfolgen soll

Schritt 3: Angeben der Attribute und Optionen, für die das Upsizing erfolgen soll

Schritt 4: Auswählen, wie das Upsizing der Anwendung erfolgen soll

Schritt 1: Auswählen, ob das Upsizing in eine vorhandene Datenbank oder in eine neue Datenbank erfolgen soll

Geben Sie auf der ersten Seite des Assistenten an, ob das Upsizing der Access-Datenbank in eine vorhandene SQL Server-Datenbank erfolgen oder ob eine neue SQL Server-Datenbank erstellt werden soll.

  • Vorhandene Datenbank verwenden    Wenn Sie diese Option auswählen und dann auf Weiter klicken, zeigt Access das Dialogfeld Datenquelle auswählen an, damit Sie eine ODBC-Datenquelle-Verbindung zu der vorhandenen SQL Server-Datenbank erstellen können.

    Informationen zu ODBC-Datenquellen

    Eine Datenquelle ist ein Datenspeicher, der die für den Zugriff auf die Daten erforderlichen Verbindungsinformationen enthält. Beispiele für Datenquellen sind Access, SQL Server, Oracle RDBMS, ein Tabellenblatt und eine Textdatei. Verbindungsinformationen sind beispielsweise der Serverstandort, der Datenbankname, die Anmeldekennung, das Kennwort und verschiedene ODBC-Treiberoptionen, mit denen beschrieben wird, wie die Verbindung zur Datenquelle hergestellt wird.

    In der ODBC-Architektur stellt eine Anwendung (wie Access oder ein Microsoft Visual Basic-Programm) die Verbindung zum ODBC-Treiber-Manager her, der seinerseits auf einen bestimmten ODBC-Treiber (z. B. auf den Microsoft SQL-ODBC-Treiber) zugreift, um die Verbindung zu einer Datenquelle (in diesem Fall eine SQL Server-Datenbank) herzustellen. In Access verwenden Sie ODBC-Datenquellen, um auf Access-externe Datenquellen zuzugreifen, die nicht über integrierte Treiber verfügen.

    Um eine Verbindung zu solchen Datenquellen herzustellen, gehen Sie folgendermaßen vor:

    • Installieren Sie auf dem Computer, auf dem sich die Datenquelle befindet, den geeigneten ODBC-Treiber.

    • Definieren Sie einen DSN (Data Source Name, Datenquellenname) mithilfe von ODBC-Datenquellenadministrator, um die Verbindungsinformationen in der Microsoft Windows-Registrierung, einer DSN-Datei oder einer Verbindungszeichenfolge in Visual Basic-Code zu speichern, um die Verbindungsinformationen direkt an den ODBC-Treiber-Manager zu übergeben. 

      Maschinendatenquellen

      Maschinendatenquellen speichern Verbindungsinformationen in der Windows-Registrierung eines bestimmten Computers unter einem benutzerdefinierten Namen. Sie können Maschinendatenquellen nur auf dem Computer verwenden, auf dem sie definiert sind. Es gibt zwei Arten von Maschinendatenquellen: Benutzer und System. Benutzerdatenquellen können nur vom aktuellen Benutzer verwendet werden, und sie werden nur diesem Benutzer angezeigt. Systemdatenquellen können von allen Benutzern eines Computers verwendet werden, und sie werden auch allen Benutzern des Computers sowie für die systemweiten Dienste angezeigt. Maschinendatenquellen sind besonders nützlich, wenn Sie mehr Sicherheit wünschen, da hierbei nur angemeldete Benutzer die Maschinendatenquelle anzeigen können. Außerdem können Remotebenutzer die Maschinendatenquelle nicht auf einen anderen Computer kopieren.

      Dateidatenquellen

      Dateidatenquellen (auch als DSN-Dateien bezeichnet) speichern Verbindungsinformationen in einer Textdatei, nicht in der Windows-Registrierung, und sie sind generell flexibler verwendbar als Maschinendatenquellen. So können Sie eine Dateidatenquelle auf jeden Computer kopieren, der über passenden ODBC-Treiber verfügt, sodass Ihre Anwendung sich auf konsistente und korrekte Informationen für Verbindungen zu allen Computern verlassen kann, die sie verwendet. Daneben besteht die Möglichkeit, die Dateidatenquelle auf einem einzigen Server unterzubringen und für mehrere Computer im Netzwerk freizugeben, sodass die Verbindungsinformationen an einer zentralen Stelle einfach gepflegt werden können.

      Sie können eine Dateidatenquelle auch vor der Freigabe schützen. Eine vor der Freigabe geschützte Dateidatenquelle befindet sich auf einem einzigen Computer und zeigt auf eine Maschinendatenquelle. Sie können eine vor der Freigabe geschützte Dateidatenquelle verwenden, um von einer Dateidatenquelle aus auf eine vorhandene Maschinendatenquelle zuzugreifen.

      Verbindungszeichenfolgen

      In einem Modul kann eine formatierte Verbindungszeichenfolge definiert werden, die die Verbindungsinformationen enthält. Eine Verbindungszeichenfolge übergibt die Verbindungsinformationen direkt an den ODBC-Treiber-Manager, und die trägt dazu bei, die Anwendung zu vereinfachen, da der Systemadministrator oder der Benutzer hiermit keinen DSN mehr erstellen muss, bevor er die Datenbank verwenden kann.

  • Neue Datenbank erstellen    Wenn Sie diese Option auswählen und dann auf Weiter klicken, zeigt Access eine Seite an, auf der Sie Informationen zu der neuen SQL Server-Datenbank eingeben können.

    • Welchen SQL Server möchten Sie für diese Datenbank verwenden?     Geben Sie hier den Namen des Servers ein, den Sie verwenden möchten.

    • Vertrauenswürdige Verbindung verwenden     Sie können eine vertrauenswürdige Verbindung verwenden, d. h. SQL Server kann in die Sicherheit des Windows-Betriebssystems integriert werden, um eine einzige Anmeldung am Netzwerk und bei der Datenbank zu ermöglichen.

    • Anmeldekennung und Kennwort     Wenn Sie keine vertrauenswürdige Verbindung verwenden, geben Sie die Anmeldekennung und das Kennwort eines Kontos mit der Berechtigung CREATE DATABASE auf dem Server ein.

    • Welchen Namen soll Ihre neue SQL Server-Datenbank erhalten?     Geben Sie den Namen der neuen SQL Server-Datenbank ein. Access ändert den Namen, wenn er einen Konflikt mit dem Namen einer vorhandenen Datenbank verursacht, und fügt ein nummeriertes Suffix (z. B. "MeineDatenbank 1") hinzu.

Abschnittsanfang

Schritt 2: Auswählen, für welche Tabellen das Upsizing erfolgen soll

In diesem Schritt wählen Sie die Access-Tabellen aus, für die das Upsizing in die SQL Server-Datenbank erfolgen soll. Wählen Sie die Tabellen aus, für die das Upsizing durchgeführt werden soll, und verwenden Sie dann die Pfeiltasten, um diese Tabellen in die Liste Nach SQL Server exportieren zu verschieben. Alternativ können Sie auch auf eine Tabelle doppelklicken, um sie von einer Liste in die andere zu verschieben.

Die Liste Vorhandene Tabellen enthält alle verknüpften Tabellen außer den SQL Server-Tabellen, die sich bereits in einer SQL Server-Datenbank befinden. Verknüpfte Tabellen, die auf eine SQL Server-Datenbank verweisen, die für den Upsizingvorgang ausgewählt wurde, werden automatisch im Listenfeld Nach SQL Server exportieren angezeigt und können nicht entfernt werden. Tabellen, die gegenwärtig im Navigationsbereich nicht angezeigt werden, werden ebenfalls ausgeschlossen, wozu auch verborgene Tabellen und Systemtabellen gehören.

Tipp   Jede Tabelle, deren Name auf "_lokal" endet, wird aus der Liste der verfügbaren Tabellen ausgeschlossen, um zu verhindern, dass das Upsizing für Tabellen durchgeführt wird, für die dieser Vorgang bereits erfolgt ist. Wenn das Upsizing für diese Tabellen erneut erfolgen soll, müssen sie umbenannt werden, bevor der Upsizing-Assistent ausgeführt wird, indem das Suffix "_lokal" entfernt wird.

Abschnittsanfang

Schritt 3: Angeben der Attribute und Optionen, für die das Upsizing erfolgen soll

In diesem Schritt wählen Sie aus, für welche Tabellenattribute das Upsizing in die SQL Server-Datenbank erfolgen soll. Standardmäßig sind alle Attribute für das Upsizing ausgewählt.

Hinweis   Standardmäßig konvertiert der Upsizing-Assistent Access-Feldnamen in gültige SQL Server-Feldnamen und Access-Datentypen in die entsprechenden SQL Server-Datentypen.

Welche Tabellenattribute möchten Sie einbeziehen?

In der folgenden Tabelle sind die Attribute aufgeführt, für die das Upsizing erfolgen kann, und es wird beschrieben, wie der Upsizing-Assistent das jeweilige Attribut verarbeitet:

Attribut

Aktion, sofern ausgewählt

Indizes

Der Upsizing-Assistent führt ein Upsizing aller Indizes durch.

Der Upsizing-Assistent wandelt Access-Primärschlüssel in SQL Server-Indizes um und markiert diese als SQL Server-Primärschlüssel. Wenn Sie auswählen, dass die SQL Server-Tabelle, für die das Upsizing erfolgt ist, mit der Access-Datenbank verknüpft werden soll, fügt der Upsizing-Assistent dem Indexnamen auch das Präfix "aaaaa" hinzu, da Access den Index als Primärschlüssel auswählt, der sich nach alphabetischer Sortierung ganz oben in der Liste der verfügbaren Indizes befindet, und mit dem Präfix "aaaaa" wird sichergestellt, dass der passende Index ausgewählt wird.

Alle anderen Indizes behalten ihre Namen, wobei ungültige Zeichen allerdings im Bedarfsfall durch das Zeichen "_" ersetzt werden. Eindeutige und nicht eindeutige Access-Indizes werden damit zu eindeutigen und nicht eindeutigen SQL Server-Indizes.

Eine verknüpfte Tabelle muss über einen eindeutigen Index verfügen, damit sie in Access aktualisiert werden kann. Der Upsizing-Assistent kann ein Upsizing eines vorhandenen eindeutigen Index durchführen, kann jedoch keinen eindeutigen Index erstellen, wenn ein solcher nicht vorhanden ist. Wenn Sie also in der Lage sein möchten, die Daten in Ihren Tabellen nach dem Upsizing zu aktualisieren, müssen Sie jeder Access-Tabelle vor dem Upsizing einen eindeutigen Index hinzufügen.

Gültigkeits-regeln

Der Upsizing-Assistent führt ein Upsizing der folgenden Elemente als Aktualisierungs- und Einfüge Trigger durch:

  • Der Eigenschaften Erforderlich aller Felder

  • Von Gültigkeitsregeln für Tabellen

  • Von Gültigkeitsregeln für Datensätze

  • Von Gültigkeitsregeln für Felder

Ein Trigger ist eine Reihe von Transact-SQL-Anweisungen, die zu einer SQL Server-Tabelle gehören. Eine Tabelle kann drei Trigger aufweisen, d. h. einen für jeden der Befehle, mit denen Daten in einer Tabelle geändert werden können: UPDATE, INSERT und DELETE. Der Trigger wird automatisch ausgeführt, wenn der Befehl ausgeführt wird. Der Upsizing-Assistent verwendet Trigger anstelle von SQL Server-Regeln, um eine Gültigkeitsprüfung auf Feldebene zu erzwingen, da die SQL Server-Regeln es nicht zulassen, dass benutzerdefinierte Fehlermeldungen angezeigt werden.

Zwischen einer Gültigkeitsregel und einem Trigger besteht nicht notwendigerweise eine 1-zu-1-Beziehung. Jede Gültigkeitsregel kann Teil mehrerer Trigger werden, und jeder Trigger kann Code enthalten, mit dem die Funktionen von mehreren Gültigkeitsregeln emuliert werden.

Wenn Sie die Eigenschaft Erforderlich eines Access-Felds auf "Wahr" festlegen, kann der Benutzer keinen Datensatz einfügen, in dem das erforderliche Feld den Wert "Null" aufweist (wenn es keine Standardbindung an das Feld gibt) oder dem Feld bei der Aktualisierung des Datensatzes den Wert "Null" zuweisen. Bei erforderlichen Feldern erfolgt das Upsizing auf Felder, in denen in SQL Server der Wert Null nicht zulässig ist.

Gültigkeitsmeldung

Die Eigenschaft Gültigkeitsmeldung der Access-Datenbank wird in die Eigenschaft Gültigkeitsmeldung des Access-Projekts umgewandelt. Auf diese Weise können im Fall einer Einschränkungsverletzung zur Laufzeit die leicht verständlichen Fehlermeldungen von Access angezeigt werden.

Standardwerte

Der Upsizing-Assistent für ein Upsizing aller Standardwert-Eigenschaften auf ANSI-Zeichensatz-Standardobjekte durch.

Tabellenbeziehungen

Der Upsizing-Assistent führt ein Upsizing aller Tabellenbeziehungen durch.

Hierbei können Sie entscheiden, wie das Upsizing von Tabellenbeziehungen und der referenziellen Integrität erfolgen soll, ob UPDATE-, INSERT- oder DELETE-Trigger oder DRI (Declared Referential Integrity) verwendet werden sollen. Bei DRI kommt die gleiche Methode wie bei der referenziellen Integrität von Access zum Einsatz, d. h., es werden Primärschlüsseleinschränkungen für Basistabellen (die Seite "1" einer 1:n-Beziehung) sowie Fremdschlüsseleinschränkungen für Fremdtabellen (in der Regel die Seite "n" einer 1:n-Beziehung) definiert.

  • Mit DRI     Wählen Sie Tabellenbeziehungen und Mit DRI aus, um die referenzielle Integrität mithilfe von DRI zu erzwingen. Die Spaltengültigkeitsprüfung der Access-Datenbank wird in eine SQL Server-DRI-Prüfungseinschränkung umgewandelt, und es wird eine Gültigkeitsmeldung wie in der folgenden Tabelle aufgeführt angezeigt.

Access-Datenbankbeziehung

SQL Server-Fremdschlüssel

Gültigkeitsmeldung

"Aktualisierungsweitergabe an verwandte Felder"

ON DELETE NO ACTION ON UPDATE CASCADE

"Der Datensatz kann nicht gelöscht werden, da die Tabelle <Fremdtabelle> verwandte Datensätze enthält."

"Löschweitergabe an verwandte Datensätze"

ON DELETE CASCADE ON UPDATE NO ACTION

"Sie können keinen Datensatz hinzufügen oder ändern, weil ein verwandter Datensatz in der Tabelle <Primärtabelle> benötigt wird."

"Aktualisierungsweitergabe an verwandte Felder"
und "Löschweitergabe an verwandte Datensätze"

ON DELETE CASCADE ON UPDATE CASCADE

Wert nicht festgelegt.

"Ohne DRI"

ON DELETE NO ACTION ON UPDATE NO ACTION

"Aufgrund der Beziehungseinschränkungen zwischen den Tabellen <Primärtabelle> und <Fremdtabelle> können Sie diesen Datensatz nicht hinzufügen, ändern oder löschen."

  • Mit Trigger     Wenn Sie in Ihren Access-Tabellenbeziehungen mit Aktualisierungsweitergabe und Löschweitergabe arbeiten und wenn Sie dieses Verhalten in den Tabellen beibehalten möchten, für die das Upsizing erfolgt ist, wählen Sie Tabellenbeziehungen und Mit Trigger aus. Auf diese Weise erfolgt das Upsizing von Aktualisierungs- oder Löschweitergaben in Form von Triggern, um die referenzielle Integrität zu erzwingen.

    Zwischen einer Tabellenbeziehung und einem Trigger besteht nicht notwendigerweise eine 1:1-Beziehung. Jede Beziehung kann Teil mehrerer Trigger werden, oder jeder Trigger kann Code enthalten, mit dem die Funktionen von mehreren Regeln für die referenzielle Integrität emuliert werden. Einfügetrigger werden bei untergeordneten Tabellen und Löschtrigger bei übergeordneten Tabellen verwendet.

    Hinweis   Access setzt voraus, dass DRI das Datenbankdiagramm einer SQL Server-Datenbank liest. Damit Access das Datenbankdiagramm lesen kann, während die referenzielle Integrität durch Trigger erzwungen wird, setzt der Upsizing-Assistent DRI in die Beziehungen, deaktiviert jedoch die Prüfung auf Fremdschlüsseleinschränkungen.

Welche Datenoptionen möchten Sie aufnehmen?

  • Timestamp-Feld in Tabellen einfügen?    SQL Server verwendet ein Timestamp-Feld, um anzugeben, dass ein Datensatz geändert wurde (jedoch ohne Zeitangabe), indem ein eindeutiges Wertefeld erstellt wird, das immer dann aktualisiert wird, wenn ein Datensatz aktualisiert wurde. Bei verknüpften Tabellen verwendet Access den Wert in Timestamp-Feldern, um zu ermitteln, ob ein Datensatz geändert wurde, bevor dieser aktualisiert wird. Im Allgemeinen bietet ein Timestamp-Feld ein Optimum an Leistung und Zuverlässigkeit. Ohne ein Timestamp-Feld muss SQL Server alle Felder eines Datensatzes prüfen, um eine eventuelle Änderung festzustellen, wodurch die Verarbeitungsgeschwindigkeit herabgesetzt wird.

    In der folgenden Tabelle werden die Einstellungen erläutert, die in dieser Liste zur Verfügung stehen:

Einstellung

Beschreibung

Ja, der Assistent soll entscheiden

Wenn die ursprünglichen Access-Tabellen Gleitkommafelder (Single oder Double), Memo-Datentyp oder OLE-Objekt-Felder enthalten, erstellt der Upsizing-Assistent in den resultierenden SQL Server-Tabellen für diese Felder neue Timestamp-Felder.

Ja, immer

Der Upsizing-Assistent erstellt ein Timestamp-Feld für alle Tabellen, für die ein Upsizing durchgeführt wurde, ohne Berücksichtigung der hierin enthaltenen Feldtypen. Hiermit wird die Leistung von Access-Tabellen erhöht, für die ein Upsizing erfolgt ist, die ggf. keine Memo-, OLE-Objekt- oder Gleitkommafelder, sondern sonstige Feldtypen enthalten.

Nein, nie

Der Upsizing-Assistent fügt den Tabellen keine Timestamp-Felder hinzu.

Wichtig   Bei verknüpften SQL Server-Tabellen prüft Access nicht, ob Memo- oder OLE-Objektfelder geändert wurden, da solche Felder viele Megabyte groß sein können, sodass der Vergleich zu viele Netzwerkressourcen und zu viel Zeit in Anspruch nehmen würde. Daher überschreibt Access die Änderung, wenn nur ein Text- oder Bildfeld geändert wurde und kein Timestamp-Feld vorhanden ist. Darüber hinaus kann auch der Eindruck entstehen, dass der Wert eines Gleitkommafelds geändert wurde, obwohl dies nicht der Fall ist, daher kann Access bei nicht vorhandenem Timestamp-Feld fälscherweise zu der Feststellung kommen, dass ein Datensatz geändert wurde.

  • Nur Tabellenstruktur erstellen, keine Daten    Der Upsizing-Assistent führt standardmäßig ein Upsizing aller Daten nach SQL Server durch. Wenn Sie das Kontrollkästchen Nur Tabellenstruktur erstellen, keine Daten aktivieren, erfolgt lediglich ein Upsizing der Datenstruktur.

Abschnittsanfang

Schritt 4: Auswählen, wie das Upsizing der Anwendung erfolgen soll

Auf der nächsten Seite des Assistenten können Sie eine von drei unterschiedlichen Methoden zum Upsizing Ihrer Access-Datenbankanwendung auswählen. Wählen Sie unter Welche Anwendungsänderungen möchten Sie durchführen? eine der folgenden Optionen aus:

  • Eine neue Access-Client/Server-Anwendung erstellen    Wenn Sie diese Option auswählen, erstellt der Upsizing-Assistent ein neues Microsoft Access-Projekt. Der Assistent fordert Sie auf, einen Namen anzugeben, der standardmäßig dem Namen der aktuellen Access-Datenbank entspricht, fügt das Suffix "CS" hinzu und speichert das Projekt dann am gleichen Speicherort wie die vorhandene Access-Datenbank.

    Der Upsizing-Assistent erstellt die Access-Projektdatei und führt dann ein Upsizing aller Datenbankobjekte aus der Access-Datenbank in das Access-Projekt durch. Wenn Sie das Kennwort und die Benutzerkennung nicht speichern, zeigt Access beim ersten Öffnen des Access-Projekts das Dialogfeld Datenverknüpfungseigenschaften an, in dem Sie die Verbindung zu einer SQL Server-Datenbank herstellen können.

  • SQL Server-Tabellen in die bestehende Anwendung einbinden    Wenn Sie diese Option auswählen, ändert der Upsizing-Assistent die Access-Datenbank so, dass in Abfragen, Formularen, Berichten und auf Datenzugriffsseiten die Daten in der neuen SQL Server-Datenbank anstelle der Daten in der Access-Datenbank verwendet werden. Der Upsizing-Assistent weist den Access-Tabellen, für die das Upsizing durchgeführt wird, das Suffix "_lokal" zu. Wenn Sie beispielsweise das Upsizing für eine Tabelle mit Namen "Mitarbeiter" durchführen, wird diese Tabelle in Ihrer Access-Datenbank in "Mitarbeiter_lokal" umbenannt. Anschließend erstellt der Upsizing-Assistent eine verknüpfte SQL Server-Tabelle mit dem Namen "Mitarbeiter".

    Hinweis   Wenn der Upsizingvorgang abgeschlossen ist, werden die Tabellen, denen das Suffix "_lokal" zugewiesen wurde, nicht mehr verwendet. Es empfiehlt sich jedoch, die lokalen Tabellen zu behalten, bis Sie geprüft haben, ob der Upsizingvorgang erfolgreich war. Sie können die lokalen Tabellen zu einem späteren Zeitpunkt löschen, um die Größe der Access-Datenbank zu reduzieren. Erstellen Sie vor dem Löschen irgendwelcher Tabellen unbedingt eine Datensicherung.

    Abfragen, Formulare, Berichte und Datenzugriffsseiten, die auf der ursprünglichen Tabelle "Mitarbeiter" basieren, verwenden nun die verknüpfte SQL Server-Tabelle "Mitarbeiter". Viele der Feldeigenschaften der lokalen Tabelle werden von der neuen lokalen Tabelle übernommen, wie Beschreibung, Beschriftung, Format, Eingabeformat und Dezimalstellenanzeige.

  • Keine Anwendungsänderungen    Wählen Sie diese Option aus, wenn Sie Ihre Daten nur in die SQL Server-Datenbank kopieren möchten und an der vorhandenen Access-Datenbankanwendung keine weiteren Änderungen vorgenommen werden sollen.

Kennwort und Benutzer-ID speichern    Standardmäßig erstellt der Upsizing-Assistent verknüpfte Tabellen in der vorhandenen Anwendung, oder er erstellt ein Access-Projekt, ohne dass der Benutzername und das Kennwort gespeichert werden. Dies bedeutet, dass die Benutzer bei jeder Anmeldung bei einer SQL Server-Datenbank aufgefordert werden, Benutzername und Kennwort anzugeben.

Wenn Sie die Option Kennwort und Benutzer-ID speichern auswählen, können Benutzer ohne Anmeldung die Verbindung zu einer SQL Server-Datenbank herstellen. Wenn Sie die Option Eine neue Access-Client/Server-Anwendung erstellen auswählen, werden der Benutzername und das Kennwort in der OLE DB-Verbindungszeichenfolge des Access-Projekts gespeichert.

Hinweis   Diese Option entfällt in Verbindung mit der Option Keine Anwendungsänderungen, wenn eine verknüpfte SQL Server-Tabelle mit einer MSysConf-Tabelle konfiguriert ist, um das Speichern von Kennwörtern zurückzuweisen.

Bericht des Upsizing-Assistenten

Wenn Sie auf Fertig stellen klicken, erstellt der Upsizing-Assistent einen Bericht, der eine detaillierte Beschreibung aller erstellten Objekte enthält und in dem alle Fehler aufgeführt sind, die während des Prozesses aufgetreten sind. Der Upsizing-Assistent zeigt den Bericht in der Seitenansicht an, sodass Sie ihn drucken oder als XPS- oder PDF-Datei speichern können. Der Bericht wird nicht als Access-Objekt gespeichert, wenn Sie die Seitenansicht schließen.

Der Bericht des Upsizing-Assistenten enthält Informationen über die folgenden Elemente:

  • Upsizing-Parameter einschließlich der Tabellenattribute, die für das Upsizing ausgewählt wurden, und wie das Upsizing erfolgt ist

  • Tabelleninformationen einschließlich eines Vergleichs der Access- und SQL Server-Werte für Namen, Datentypen, Indizes, Gültigkeitsregeln, Standardwerte, Trigger und ob Timestamp-Felder hinzugefügt wurden

  • Alle aufgetretenen Fehler wie volle Datenbank- oder Transaktionsprotokolle, unzureichende Berechtigungen, Gerät oder Datenbank nicht erstellt, Tabelle, Standardwert oder Gültigkeitsregel übersprungen, Beziehung nicht hergestellt, Abfrage übersprungen (da sie nicht in die SQL Server-Syntax übersetzt werden konnte) sowie Umwandlungsfehler bei Steuerelement und der Datenherkunft in Formularen und Berichten

Abschnittsanfang

Seitenanfang

Wie ein Upsizing von Datenbankobjekten erfolgt

Das Upsizing wird für die folgenden Daten und Datenbankobjekte durchgeführt:

  • Daten und Datentypen    Alle Datentypen in der Access-Datenbank werden in ihre SQL Server-Entsprechung umgewandelt. Der Assistent wandelt Access-Datenbanktext in Unicode um, indem allen Zeichenfolgenwerten der Unicode-Textbezeichner und allen Datentypen das Unicode-Präfix "n" hinzugefügt wird.

  • Abfragen    

    • Auswahlabfragen ohne ORDER BY-Klausel oder Parameter werden in Sichten umgewandelt.

    • Aktionsabfragen werden in Aktionsabfragen mit gespeicherten Prozeduren umgewandelt. Access fügt nach dem Parameterdeklarationscode SET NOCOUNT ON hinzu, damit sichergestellt ist, dass die gespeicherte Prozedur ausgeführt werden kann.

    • Auswahlabfragen, die sich nur auf Tabellen beziehen (so genannte Basisabfragen) und in denen entweder Parameter oder eine ORDER BY-Klausel verwendet werden, werden in benutzerdefinierte Funktionen umgewandelt. Falls erforderlich, wird einer Abfrage, die eine ORDER BY-Klausel enthält, die Klausel TOP 100 PERCENT hinzugefügt.

    • Parameterabfragen, in denen benannte Parameter verwendet werden, behalten den ursprünglichen Textnamen, der in der Access-Datenbank verwendet wurde, und werden entweder in gespeicherte Prozeduren oder in benutzerdefinierte Inlinefunktionen umgewandelt.

      Hinweis   Möglicherweise möchten Sie Abfragen, für die das Upsizing nicht durchgeführt werden konnte, wie SQL-Pass-Through-Abfrage, Datendefinitionsabfrage und Kreuztabellenabfrage manuell umwandeln. Gegebenenfalls müssen Sie auch ein manuelles Upsizing von Abfragen durchführen, die zu tief geschachtelt waren.

  • Formulare, Berichte und Steuerelemente    SQL-Anweisungen in RecordSource-, ControlsSource- und RowSource-Eigenschaften von Formularen, Berichten oder Steuerelementen werden beibehalten und nicht in gespeicherte Prozeduren oder benutzerdefinierte Funktionen umgewandelt.

  • Start-Eigenschaften    Der Upsizing-Assistent führt ein Upsizing der folgenden Start-Eigenschaften durch:

    StartUpShowDBWindow
    StartUpShowStatusBar
    AllowShortcutMenus
    AllowFullMenus
    AllowBuiltInToolbars
    AllowToolbarChanges
    AllowSpecialKeys
    UseAppIconForFrmRpt
    AppIcon
    AppTitle
    StartUpForm
    StartUpMenuBar
    StartupShortcutMenuBar

  • Module und Makros    Der Upsizing-Assistent nimmt keine Änderungen an Modulen oder Makros vor. Möglicherweise müssen Sie Ihre Anwendung ändern, um die Features von SQL Server in vollem Umfang nutzen zu können. Weitere Informationen hierzu finden Sie im MSDN-Artikel Optimieren von Microsoft Office Access-Anwendungen, die mit SQL Server verknüpft sind (nur auf Englisch verfügbar).

Seitenanfang

Gilt für: Access 2007



War diese Information hilfreich?

Ja Nein

Wie können wir es verbessern?

255 Zeichen verfügbar

Um Ihre Privatsphäre zu schützen, geben Sie bitte keine Kontaktinformationen in Ihrem Feedback an. Lesen Sie unsere Datenschutzbestimmung.

Vielen Dank für Ihr Feedback!

Supportressourcen

Sprache ändern