Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Nachdem Sie eine Verbindung mit Db2 und SQL Server hergestellt und Projekt- und Datenzuordnungsoptionen festgelegt haben, können Sie Db2-Datenbankobjekte in SQL Server-Datenbankobjekte konvertieren.
Der Konvertierungsprozess
Beim Konvertieren von Datenbankobjekten werden die Objektdefinitionen von Db2 verwendet, in ähnliche SQL Server-Objekte konvertiert und diese Informationen dann in die SSMA-Metadaten (SQL Server Migration Assistant) geladen. Die Informationen werden nicht in die SQL Server-Instanz geladen. Anschließend können Sie die Objekte und deren Eigenschaften mit dem SQL Server Metadata Explorer anzeigen.
Während der Konvertierung gibt SSMA Ausgabemeldungen im Bereich „Ausgabe“ und Fehlermeldungen im Bereich „Fehlerliste“ aus. Verwenden Sie die Ausgabe- und Fehlerinformationen, um zu bestimmen, ob Sie Ihre Db2-Datenbanken oder Den Konvertierungsprozess ändern müssen, um die gewünschten Konvertierungsergebnisse zu erhalten.
Festlegen von Konvertierungsoptionen
Überprüfen Sie vor dem Konvertieren von Objekten die Projektkonvertierungsoptionen im Dialogfeld "Projekteinstellungen ". Verwenden Sie dieses Dialogfeld, um festzulegen, wie SSMA Funktionen und globale Variablen konvertiert. Weitere Informationen finden Sie unter Project-Einstellungen (Konvertierung).For more information, see Project Settings (Conversion).
Konvertierungsergebnisse
Die folgende Tabelle zeigt, welche Db2-Objekte konvertiert werden, und die resultierenden SQL Server-Objekte:
| Db2-Objekte | Resultierende SQL Server-Objekte |
|---|---|
| Datentypen | SSMA ordnet jeden Typ mit Ausnahme der folgenden Typen zu:CLOB: Einige native Funktionen, die mit diesem Typ arbeiten, werden nicht unterstützt (z. B. CLOB_EMPTY())BLOB: Einige native Funktionen für die Arbeit mit diesem Typ werden nicht unterstützt (z. B. BLOB_EMPTY())DBLOB: Einige native Funktionen zum Arbeiten mit diesem Typ werden nicht unterstützt (z. B. DBLOB_EMPTY()) |
| Benutzerdefinierte Typen | SSMA ordnet die folgenden benutzerdefinierten Objekte zu: - Eindeutiger Typ - Strukturierter Typ - SQL PL-Datentypen Hinweis: Schwache Cursortypen werden nicht unterstützt. |
| Sonderregister | SSMA bildet nur die folgenden Register ab:CURRENT TIMESTAMPCURRENT DATECURRENT TIMECURRENT TIMEZONECURRENT USERSESSION_USER und USERSYSTEM_USERCURRENT CLIENT_APPLNAMECURRENT CLIENT_WRKSTNNAMECURRENT LOCK TIMEOUTCURRENT SCHEMACURRENT SERVERCURRENT ISOLATIONAndere spezielle Register werden nicht der SQL Server-Semantik zugeordnet. |
CREATE TABLE |
SSMA ordnet CREATE TABLE mit den folgenden Ausnahmen zu:Mehrdimensionale Clusteringtabellen (MDC) Bereichsgeclusterte Tabellen (RCT) Partitionierte Tabellen Getrennte Tabelle DATA CAPTURE-KlauselIMPLICITLY HIDDEN OptionVOLATILE Option |
CREATE VIEW |
SSMA ordnet CREATE VIEWWITH LOCAL CHECK OPTION zu, andere Optionen werden jedoch nicht der SQL Server-Semantik zugeordnet. |
CREATE INDEX |
SSMA ordnet CREATE INDEX mit den folgenden Ausnahmen zu:XML-Index BUSINESS_TIME WITHOUT OVERLAPS OptionPARTITIONED-KlauselSPECIFICATION ONLY OptionEXTEND USING OptionMINPCTUSED OptionPAGE SPLIT Option |
| Auslöser | SSMA ordnet die folgende Triggersemantik zu:AFTER
/
FOR EACH ROW AuslöserAFTER
/
FOR EACH STATEMENT AuslöserBEFORE
/
FOR EACH ROW und INSTEAD OF / FOR EACH ROW Trigger |
| Sequenzen | Abgebildet. |
SELECT-Anweisung |
SSMA ordnet SELECT mit den folgenden Ausnahmen zu:data-change-table-reference-Klausel – Teilweise zugeordnet, aber FINALTabellen werden nicht unterstützt.Table-Reference-Klausel – Teilweise abgebildet, aber only-table-reference, outer-table-reference, analyze-table-expression, collection-derived-table und xmltable-expression sind nicht auf die SQL-Server-Semantik abgebildet period-specification Klausel - Nicht zugeordnet.Continue-Handler-Klausel - Nicht zugeordnet. Typisierte Korrelationsklausel – Nicht zugeordnet. Gleichzeitige Zugriffsauflösungsklausel – Nicht zugeordnet. |
VALUES-Anweisung |
Abgebildet. |
INSERT-Anweisung |
Abgebildet. |
UPDATE-Anweisung |
SSMA ordnet UPDATE mit den folgenden Ausnahmen zu:Tabellenreferenzklausel – only-table-reference ist nicht auf die SQL Server-Semantik abgebildet Periodenklausel – ist nicht zugeordnet. |
MERGE-Anweisung |
SSMA ordnet MERGE mit den folgenden Ausnahmen zu:Einzelne vs. mehrere Vorkommen jeder Klausel – Abgebildet auf die SQL Server-Semantik für die begrenzte Anzahl von Vorkommen jeder Klausel SIGNAL Klausel – wird nicht der SQL Server-Semantik zugeordnetGemischte UPDATE und DELETE Klauseln – wird nicht der SQL Server-Semantik zugeordnetPeriod-Klausel – wird nicht der SQL Server-Semantik zugeordnet |
DELETE-Anweisung |
SSMA ordnet DELETE mit den folgenden Ausnahmen zu:Tabellenreferenzklausel – only-table-reference wird nicht der SQL-Server-Semantik zugeordnet Period-Klausel – wird nicht der SQL Server-Semantik zugeordnet |
| Isolationsebene und Sperrtyp | Abgebildet. |
| Prozeduren (SQL) | Abgebildet. |
| Verfahren (extern) | Manuelle Aktualisierung erforderlich. |
| Prozeduren (Quelle) | Ordnen Sie sie nicht der Semantik von SQL Server zu. |
| Zuordnungsanweisung | Abgebildet. |
CALL Anweisung für eine Prozedur |
Abgebildet. |
CASE-Anweisung |
Abgebildet. |
FOR-Anweisung |
Abgebildet. |
GOTO-Anweisung |
Abgebildet. |
IF-Anweisung |
Abgebildet. |
ITERATE-Anweisung |
Abgebildet. |
LEAVE-Anweisung |
Abgebildet. |
LOOP-Anweisung |
Abgebildet. |
REPEAT-Anweisung |
Abgebildet. |
RESIGNAL-Anweisung |
Bedingungen werden nicht unterstützt. Nachrichten können optional sein. |
RETURN-Anweisung |
Abgebildet. |
SIGNAL-Anweisung |
Bedingungen werden nicht unterstützt. Nachrichten können optional sein. |
WHILE-Anweisung |
Abgebildet. |
GET DIAGNOSTICS-Anweisung |
SSMA ordnet GET DIAGNOSTICS mit den folgenden Ausnahmen zu:ROW_COUNT -Abgebildet.Db2_RETURN_STATUS -Abgebildet.MESSAGE_TEXT -Abgebildet.Db2_SQL_NESTING_LEVEL - lässt sich nicht auf die SQL Server-Semantik abbildenDb2_TOKEN_STRING - lässt sich nicht auf die SQL Server-Semantik abbilden |
| Cursoren | SSMA ordnet Cursor mit den folgenden Ausnahmen zu:ALLOCATE CURSOR Anweisung – entspricht nicht der SQL Server-SemantikASSOCIATE LOCATORS Anweisung – entspricht nicht der SQL Server-SemantikDECLARE CURSOR-Anweisung – Returnability-Klausel ist der SQL-Server-Semantik nicht zugeordnetFETCH -Anweisung - Partielle Zuordnung. Nur Variablen als Ziel werden unterstützt.
SQLDA DESCRIPTOR ist nicht sql Server-Semantik zugeordnet |
| Variablen | Abgebildet. |
| Ausnahmen, Handler und Bedingungen | SSMA bildet Ausnahmebehandlung mit folgenden Ausnahmen ab:EXIT Handler - zugeordnet.UNDO Handler - zugeordnet.CONTINUE Handler - Nicht zugeordnet.Bedingungen – Dies ist nicht der SQL Server-Semantik zugeordnet. |
| Dynamische SQL | Nicht abgebildet. |
| Aliase | Abgebildet. |
| Spitznamen | Partielle Zuordnung. Für das zugrunde liegende Objekt ist eine manuelle Verarbeitung erforderlich. |
| Synonyme | Abgebildet. |
| Standardfunktionen in Db2 | SSMA ordnet Db2-Standardfunktionen zu, wenn eine entsprechende Funktion in SQL Server verfügbar ist: |
| Autorisierung | Nicht abgebildet. |
| Prädikate | Abgebildet. |
SELECT INTO-Anweisung |
Nicht abgebildet. |
VALUES INTO-Anweisung |
Nicht abgebildet. |
| Transaktionssteuerung | Nicht abgebildet. |
Konvertieren von Db2-Datenbankobjekten
Zum Konvertieren von Db2-Datenbankobjekten wählen Sie zuerst die Objekte aus, die Sie konvertieren möchten, und lassen Sie dann SSMA die Konvertierung durchführen. Um Ausgabemeldungen während der Konvertierung anzuzeigen, navigieren Sie zu "Ausgabe anzeigen>".
So konvertieren Sie Db2-Objekte in SQL Server-Syntax
Erweitern Sie im Db2-Metadaten-Explorer den Db2-Server, und erweitern Sie dann Schemas.
Zu konvertierende Objekte auswählen:
Um alle Schemas zu konvertieren, aktivieren Sie das Kontrollkästchen neben Schemas.
Wenn Sie eine Datenbank konvertieren oder weglassen möchten, aktivieren Sie das Kontrollkästchen neben dem Schemanamen.
Wenn Sie eine Kategorie von Objekten konvertieren oder weglassen möchten, erweitern Sie ein Schema, und aktivieren oder deaktivieren Sie dann das Kontrollkästchen neben der Kategorie.
Wenn Sie einzelne Objekte konvertieren oder weglassen möchten, erweitern Sie den Kategorieordner, und aktivieren oder deaktivieren Sie dann das Kontrollkästchen neben dem Objekt.
Um alle ausgewählten Objekte zu konvertieren, klicken Sie mit der rechten Maustaste auf Schemas, und wählen Sie "Schema konvertieren" aus.
Sie können auch einzelne Objekte oder Kategorien von Objekten konvertieren, indem Sie mit der rechten Maustaste auf das Objekt oder den übergeordneten Ordner klicken und dann "Schema konvertieren" auswählen.
Konvertierungsprobleme anzeigen
Einige Db2-Objekte werden möglicherweise nicht konvertiert. Sie können die Erfolgsraten der Konvertierung ermitteln, indem Sie den Zusammenfassenden Konvertierungsbericht anzeigen.
Anzeigen eines Zusammenfassungsberichts
Wählen Sie im Db2-Metadaten-Explorer Schemas aus.
Wählen Sie im rechten Bereich die Registerkarte „Bericht“ aus.
Dieser Bericht zeigt den Zusammenfassenden Bewertungsbericht für alle Datenbankobjekte, die bewertet oder konvertiert wurden. Sie können auch einen Zusammenfassungsbericht für einzelne Objekte anzeigen:
Um den Bericht für ein einzelnes Schema anzuzeigen, wählen Sie das Schema im Db2-Metadaten-Explorer aus.
Um den Bericht für ein einzelnes Objekt anzuzeigen, wählen Sie das Objekt im Db2-Metadaten-Explorer aus. Objekte mit Konvertierungsproblemen weisen ein rotes Fehlersymbol auf.
Bei Objekten, bei denen die Konvertierung fehlgeschlagen ist, können Sie die Syntax anzeigen, die zu einem Konvertierungsfehler führte.
Anzeigen einzelner Konvertierungsprobleme
Erweitern Sie im Db2-Metadaten-Explorer Schemas.
Erweitern Sie das Schema, das ein rotes Fehlersymbol anzeigt.
Erweitern Sie unter dem Schema einen Ordner mit einem roten Fehlersymbol.
Wählen Sie das Objekt mit einem roten Fehlersymbol aus.
Wählen Sie im rechten Bereich die Registerkarte „Bericht“ aus.
Oben auf der Registerkarte Bericht befindet sich eine Dropdown-Liste. Wenn in der Liste "Statistik" angezeigt wird, ändern Sie die Auswahl in "Quelle".
SSMA zeigt den Quellcode und mehrere Schaltflächen direkt über dem Code an.
Wählen Sie die Schaltfläche Nächstes Problem aus (ein rotes Fehlersymbol mit einem nach rechts zeigenden Pfeil).
SSMA hebt den ersten problematischen Quellcode hervor, der im aktuellen Objekt gefunden wird.
Für jedes Element, das nicht konvertiert werden konnte, müssen Sie bestimmen, was Sie mit diesem Objekt tun möchten:
Sie können den Quellcode für Prozeduren auf der Registerkarte SQL ändern.
Sie können das Objekt in der Db2-Datenbank ändern, um problematischen Code zu entfernen oder zu überarbeiten. Um den aktualisierten Code in SSMA zu laden, müssen Sie die Metadaten aktualisieren. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit der Db2-Datenbank.
Sie können das Objekt aus der Migration ausschließen. Deaktivieren Sie im SQL Server-Metadaten-Explorer und im Db2-Metadaten-Explorer das Kontrollkästchen neben dem Element, bevor Sie die Objekte in SQL Server laden und Daten aus Db2 migrieren.