Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Nadat u verbinding hebt gemaakt met Oracle, maakt u verbinding met SQL Server en stelt u opties voor project- en gegevenstoewijzing in, kunt u Oracle-databaseobjecten converteren naar SQL Server-databaseobjecten.
Het conversieproces
Als u databaseobjecten converteert, worden de objectdefinities uit Oracle gebruikt, geconverteerd naar vergelijkbare SQL Server-objecten en worden deze gegevens vervolgens geladen in de metagegevens voor Microsoft SQL Server Migration Assistant (SSMA) voor Oracle. De informatie wordt niet geladen in het exemplaar van SQL Server. Vervolgens kunt u de objecten en de bijbehorende eigenschappen bekijken met behulp van de SQL Server Metadata Explorer.
Tijdens de conversie drukt SSMA uitvoerberichten af naar het deelvenster Uitvoer en foutberichten naar het deelvenster Foutenlijst . Gebruik de uitvoer- en foutgegevens om te bepalen of u uw Oracle-databases of het conversieproces moet wijzigen om de gewenste conversieresultaten te verkrijgen.
Conversieopties instellen
Voordat u objecten converteert, controleert u de opties voor projectconversie in het dialoogvenster Projectinstellingen. Met behulp van dit dialoogvenster kunt u bepalen hoe SSMA functies en globale variabelen converteert. Zie projectinstellingen (conversie)voor meer informatie.
Conversieresultaten
In de volgende tabel ziet u welke Oracle-objecten worden geconverteerd en de resulterende SQL Server-objecten:
| Oracle-objecten | Resulterende SQL Server-objecten |
|---|---|
| Functies | Als de functie rechtstreeks kan worden geconverteerd naar Transact-SQL, maakt SSMA een functie. In sommige gevallen moet de functie worden geconverteerd naar een opgeslagen procedure. In dit geval maakt SSMA een opgeslagen procedure en een functie die de opgeslagen procedure aanroept. |
| Werkwijzen | Als de procedure rechtstreeks kan worden geconverteerd naar Transact-SQL, maakt SSMA een opgeslagen procedure. In sommige gevallen moet een opgeslagen procedure worden aangeroepen in een autonome transactie. In dit geval maakt SSMA twee opgeslagen procedures: een die de procedure implementeert en een andere die de procedure aanroept die wordt geïmplementeerd. |
| Pakketten | SSMA maakt een set opgeslagen procedures en functies die zijn geïntegreerd met vergelijkbare objectnamen. |
| Sequenties | SSMA maakt reeksobjecten (SQL Server 2012 of SQL Server 2014) of emuleert Oracle-reeksen. |
| Tabellen met afhankelijke objecten, zoals indexen en triggers | SSMA maakt tabellen met afhankelijke objecten. |
| Weergaven met afhankelijke objecten, zoals triggers | SSMA maakt weergaven met afhankelijke objecten. |
| Gematerealiseerde weergaven | SSMA maakt geïndexeerde weergaven op SQL Server met enkele uitzonderingen. De conversie mislukt als de gerealiseerde weergave een of meer van de volgende constructies bevat: Door de gebruiker gedefinieerde functie. Niet-deterministisch veld, functie of expressie in SELECT, WHERE of GROUP BY clausules.Gebruik van de kolom Float in SELECT*, WHERE, of GROUP BY clausules (speciaal geval van een eerder genoemd probleem).Aangepast gegevenstype (inclusief genestelde tabellen). COUNT (uniek <veld>).FETCH.OUTER joins (LEFT, RIGHT, ofwel FULL).Subquery, andere weergave. OVER, RANK, LEAD of LOG.MIN, . MAXUNION, , MINUSINTERSECT.HAVING. |
| Aanleiding | SSMA maakt triggers op basis van de volgende regels:BEFORE triggers worden geconverteerd naar INSTEAD OF triggers.AFTER triggers worden geconverteerd naar AFTER triggers.INSTEAD OF triggers worden geconverteerd naar INSTEAD OF triggers. Meerdere INSTEAD OF triggers die zijn gedefinieerd voor dezelfde bewerking, worden gecombineerd tot één trigger.Triggers op rijniveau worden geëmuleerd met behulp van cursors. Samengestelde triggers worden geconverteerd naar INSTEAD OF triggers. Meerdere samengestelde triggers worden gecombineerd tot één trigger.Trapsgewijze triggers worden geconverteerd naar meerdere afzonderlijke triggers. |
| Synoniemen | Synoniemen worden gemaakt voor de volgende objecttypen: Tabellen en objecttabellen. Weergaven en objectweergaven. Opgeslagen procedures. Functies. Synoniemen voor de volgende objecten worden omgezet en vervangen door directe objectverwijzingen: Sequenties. Pakketten. Java-klasseschemaobjecten. Door de gebruiker gedefinieerde objecttypen. Synoniemen voor een ander synoniem kunnen niet worden gemigreerd en worden gemarkeerd als fouten. Synoniemen worden niet gemaakt voor gematerialiseerde weergaven. |
| Door de gebruiker gedefinieerde typen | SSMA biedt geen ondersteuning voor conversie van door de gebruiker gedefinieerde typen. Door de gebruiker gedefinieerde typen, met inbegrip van het gebruik in PL/SQL-programma's, worden gemarkeerd met speciale conversiefouten die worden geleid door de volgende regels: De tabelkolom van een door de gebruiker gedefinieerd type wordt geconverteerd naar VARCHAR(8000).Het argument van een door de gebruiker gedefinieerd type naar een opgeslagen procedure of functie wordt geconverteerd naar VARCHAR(8000).Variabele van een door de gebruiker gedefinieerd type in PL/SQL-blok wordt geconverteerd naar VARCHAR(8000).Objecttabel wordt geconverteerd naar een standaardtabel. De objectweergave wordt geconverteerd naar een standaardweergave. |
Oracle-databaseobjecten converteren
Als u Oracle-databaseobjecten wilt converteren, selecteert u de objecten die u wilt converteren en voert u vervolgens SSMA de conversie uit. Tijdens de conversie, als u uitvoerberichten wilt weergeven, selecteert u in het menu Weergave de optie Uitvoer.
Oracle-objecten converteren naar SQL Server-syntaxis
Vouw in Oracle Metadata Explorer de Oracle-server uit en vouw vervolgens Schema's uit.
Objecten selecteren die u wilt converteren:
- Als u alle schema's wilt converteren, schakelt u het selectievakje in naast Schema's.
- Als u een database wilt converteren of weglaten, schakelt u het selectievakje naast de schemanaam in.
- Als u een categorie objecten wilt converteren of weglaten, vouwt u een schema uit en schakelt u het selectievakje naast de categorie in of uit.
- Als u afzonderlijke objecten wilt converteren of weglaten, vouwt u de categoriemap uit en schakelt u het selectievakje naast het object in of uit.
Als u alle geselecteerde objecten wilt converteren, klikt u met de rechtermuisknop op Schema's en selecteert u Schema Converteren.
U kunt ook individuele objecten of objectcategorieën converteren door met de rechtermuisknop op het object of de hoofdmap te klikken en vervolgens Convert Schemate selecteren.
Conversieproblemen weergeven
Sommige Oracle-objecten worden mogelijk niet geconverteerd. U kunt de conversiepercentages bepalen door het overzichtsconversierapport weer te geven.
Een overzichtsrapport weergeven
Selecteer schema's in Oracle Metadata Explorer.
Selecteer het tabblad Rapport in het rechterdeelvenster.
Dit rapport bevat het overzichtsevaluatierapport voor alle databaseobjecten die zijn geëvalueerd of geconverteerd. U kunt ook een overzichtsrapport voor afzonderlijke objecten weergeven.
- Als u het rapport voor een afzonderlijk schema wilt weergeven, selecteert u het schema in Oracle Metadata Explorer.
- Als u het rapport voor een afzonderlijk object wilt weergeven, selecteert u het object in Oracle Metadata Explorer. Objecten met conversieproblemen hebben een rood foutpictogram.
Voor objecten waarvoor de conversie is mislukt, kunt u de syntaxis weergeven die heeft geresulteerd in de conversiefout.
Problemen met afzonderlijke conversies weergeven
Vouw in Oracle Metadata Explorer schema's uit.
Vouw het schema uit met een rood foutpictogram.
Vouw onder het schema een map uit met een rood foutpictogram.
Selecteer het object met een rood foutpictogram.
Selecteer het tabblad Rapport in het rechterdeelvenster.
Boven aan het tabblad Rapport bevindt zich een vervolgkeuzelijst. Als in de lijst Statistieken wordt weergegeven, wijzigt u de selectie in Bron. SSMA geeft de broncode en verschillende knoppen direct boven de code weer.
Selecteer de knop Volgende probleem , met een rood foutpictogram met een pijl naar rechts. SSMA markeert de eerste problematische broncode die in het huidige object wordt gevonden.
Kies voor elk item dat niet kan worden geconverteerd, wat u met dat object wilt doen:
- U kunt de broncode voor procedures wijzigen op het tabblad SQL.
- U kunt het object in de Oracle-database wijzigen om problematische code te verwijderen of te herzien. Als u de bijgewerkte code in SSMA wilt laden, moet u de metagegevens bijwerken. Zie Verbinding maken met Oracle Database voor meer informatie.
- U kunt het object uitsluiten van migratie. Schakel in SQL Server Metadata Explorer en Oracle Metadata Explorer het selectievakje naast het item uit. Laad vervolgens de objecten in SQL Server en migreer gegevens van Oracle.