View a markdown version of this page

Transformationsregeln bei der DMS-Schemakonvertierung - AWS Database Migration Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Transformationsregeln bei der DMS-Schemakonvertierung

Mit Transformationsregeln können Sie anpassen, wie die DMS-Schemakonvertierung Ihre Datenbankobjekte konvertiert, wobei Standardnamen und Datentypzuordnungen außer Kraft gesetzt werden. Sie können diese Regeln auf Datenbanken, Schemas, Tabellen, Ansichten, Spalten, Funktionsrückgabewerte, Routineparameter und lokale Variablen anwenden.

Nehmen wir beispielsweise an, dass Sie in Ihrem Quellschema eine Reihe von Tabellen mit dem Namen test_TABLE_NAME haben. Sie können eine Regel einrichten, die das Präfix test_ im Zielschema in das Präfix demo_ ändert.

Sie können Transformationsregeln für die folgenden Aufgaben erstellen:

  • Ein Präfix hinzufügen, entfernen oder ersetzen

  • Ein Suffix hinzufügen, entfernen oder ersetzen

  • Ändern Sie den Datentyp einer Spalte, eines Funktionsrückgabewerts, eines Routineparameters oder einer lokalen Variablen

  • Konvertiert den Objektnamen in Klein- oder Großbuchstaben

  • Benennen Sie ein Objekt um

Erstellen von Transformationsregeln

DMS Schema Conversion speichert Transformationsregeln als Teil Ihres Migrationsprojekts. Um Transformationsregeln zu definieren, übergeben Sie sie als JSON-Zeichenfolge, die ein Objekt mit einem rules Array enthält, wenn Sie ein Migrationsprojekt erstellen oder ändern. Jedes Element im Array steht für ein separates Regelobjekt. Ein Migrationsprojekt unterstützt bis zu 512 Transformationsregeln (maximal 128 KB).

Die Struktur des Arrays mit Transformationsregeln sieht wie folgt aus:

{ "rules": [ { Rule object 1 }, { Rule object 2 }, ... { Rule object N } ] }

Sie können Ihrem Projekt mehrere Transformationsregeln hinzufügen. DMS Schema Conversion wendet Transformationsregeln während der Konvertierung in derselben Reihenfolge an, in der sie hinzugefügt wurden.

Wenn mehrere Regeln auf dasselbe Objekt abzielen, hängt das Verhalten vom Aktionstyp ab. Regeln mit unterschiedlichen Aktionstypen werden alle wirksam. Beispielsweise gelten sowohl eine add-prefix Regel als auch eine add-suffix Regel. Regeln mit demselben Aktionstyp überschreiben sich gegenseitig, und nur die letzte ist wirksam.

Verwenden Sie eine der folgenden Methoden, um Transformationsregeln zu erstellen.

AWS Management Console
Um Transformationsregeln mit der Konsole zu erstellen
  1. Wählen Sie auf der Seite Migrationsprojekt erstellen die Option Transformationsregeln hinzufügen aus. Weitere Informationen finden Sie unter Erstellen von Migrationsprojekten.

  2. Wählen Sie unter Regelziel den Typ der Datenbankobjekte aus, für die diese Regel gilt. Der Konsolenassistent unterstützt schematable, und column zielt darauf ab. Um andere Ziele wie database oder zu verwendenview, verwenden Sie den JSON-Editor in der Konsole oder die AWS CLI.

  3. Wählen Sie für Quell-Schema die Option Schema eingeben aus. Geben Sie dann die Quellschemas, Tabellen und Spalten an, für die diese Regel gilt. Sie können einen exakten Namen verwenden, um ein Objekt auszuwählen, oder Sie können ein Muster mit dem Prozentzeichen (%) als Platzhalter für eine beliebige Anzahl von Zeichen verwenden.

  4. Wählen Sie unter Aktion die Aufgabe aus, die ausgeführt werden soll.

  5. Geben Sie je nach Regelaktion zusätzliche Werte ein:

    • add-prefixoder add-suffix — Geben Sie den Text ein, der hinzugefügt werden soll.

    • remove-prefixoder remove-suffix — Geben Sie den zu entfernenden Text ein.

    • replace-prefixoder replace-suffix — Geben Sie den vorhandenen Text und den Ersatztext ein.

    • rename— Geben Sie den neuen Namen für das Objekt ein.

    • convert-uppercaseoder convert-lowercase — Keine zusätzlichen Werte erforderlich.

    • change-data-type— Geben Sie den Namen des Zieldatentyps und optional die Genauigkeit, den Maßstab oder die Länge ein.

  6. Wählen Sie Transformationsregeln hinzufügen aus, um eine weitere Transformationsregel hinzuzufügen.

    Wenn Sie mit dem Hinzufügen von Regeln fertig sind, wählen Sie Migrationsprojekt erstellen aus.

AWS CLI

Um Transformationsregeln mithilfe der AWS CLI hinzuzufügen, verwenden Sie den --transformation-rules Parameter mit einem der folgenden Befehle:

Das folgende Beispiel fügt Transformationsregeln zu einem vorhandenen Migrationsprojekt hinzu:

aws dms modify-migration-project \ --migration-project-identifier migration_project_arn \ --transformation-rules 'json_rules'

Um diesen Befehl in einer bestimmten AWS-Region auszuführen, fügen Sie beispielsweise den --region Parameter hinzu--region us-west-2.

Informationen zum Bearbeiten, Duplizieren oder Entfernen vorhandener Transformationsregeln finden Sie unterBearbeiten von Transformationsregeln.

Transformationsregeln werden abgerufen

Sie können Transformationsregeln aus einem vorhandenen DMS-Schemakonvertierungs-Migrationsprojekt mithilfe der AWS Management Console oder der AWS CLI abrufen.

AWS Management Console

Um die Transformationsregeln mit der AWS Management Console anzuzeigen, wählen Sie für ein vorhandenes Migrationsprojekt die Option Ändern aus und überprüfen Sie die Liste der vorhandenen Regeln im Abschnitt Transformationsregeln.

AWS CLI

Verwenden Sie den Befehl describe-migration-projects, um Transformationsregeln aus einem vorhandenen DMS-Schemakonvertierungs-Migrationsprojekt abzurufen. Die Antwort verwendet das JSON-Format und enthält die mit dem Projekt verknüpften Transformationsregeln.

Das folgende AWS CLI-Beispiel ruft Transformationsregeln aus einem Migrationsprojekt ab:

aws dms describe-migration-projects \ --filters Name=migration-project-identifier,Values=migration_project_arn

Bearbeiten von Transformationsregeln

Verwenden Sie eine der folgenden Methoden, um Transformationsregeln in Ihrem Migrationsprojekt zu bearbeiten, hinzuzufügen oder zu entfernen.

AWS Management Console
So bearbeiten Sie Transformationsregeln
  1. Wählen Sie Migrationsprojekte und dann Ihr Migrationsprojekt aus.

  2. Wählen Sie Ändern, um die Einstellungen Ihres Migrationsprojekts zu bearbeiten.

  3. Wählen Sie für Transformationsregeln eine der folgenden Aktionen:

    • Wählen Sie Transformationsregel hinzufügen, um eine neue Transformationsregel hinzuzufügen.

    • Wählen Sie Duplizieren, um eine bestehende Transformationsregel zu duplizieren und am Ende der Liste hinzuzufügen.

    • Wählen Sie Entfernen aus, um eine vorhandene Transformationsregel zu löschen.

    • Wählen Sie die vorhandene Transformationsregel aus, um sie zu bearbeiten.

  4. Wählen Sie Änderungen speichern aus, wenn Sie mit dem Bearbeiten der Regeln fertig sind.

AWS CLI

Um Transformationsregeln mithilfe der AWS CLI zu aktualisieren, verwenden Sie den Befehl modify-migration-project mit dem Parameter. --transformation-rules Übergeben Sie den vollständigen aktualisierten Regelsatz als JSON-Zeichenfolge.

aws dms modify-migration-project \ --migration-project-identifier migration_project_arn \ --transformation-rules 'json_rules'

Format der Transformationsregeln

Eine Transformationsregel verwendet JSON-Objektfelder, um zu definieren, wie ein Quellobjekt in sein Zieläquivalent konvertiert wird. Jeder Regeltyp verwendet einen bestimmten Satz von Feldern. Schließen Sie nur die Felder ein, die für Ihre Aufgabe gelten.

Das folgende JSON-Objekt beschreibt eine Transformationsregel für die DMS-Schemakonvertierung:

{ "rule-type": "transformation", "rule-id": rule_id, "rule-name": "rule_name", "rule-action": "rule_action", "rule-target": "rule_target", "object-locator": { [ "database-name": "database_name", ] [ "schema-name": "schema_name", ] [ "table-name": "table_name", ] [ "column-name": "column_name", ] [ "parent": "parent_name", ] [ "function-name": "function_name", ] [ "procedure-name": "procedure_name", ] [ "parameter-name": "parameter_name", ] [ "local-variable-name": "local_variable_name", ] [ "type": "source_data_type", ] [ "precision": source_precision, ] [ "scale": source_scale, ] [ "length": source_length ] }, [ "value": "rule_value", ] [ "old-value": "rule_old_value", ] [ "data-type": { "type": "data_type_name", [ "precision": data_type_precision, ] [ "scale": data_type_scale, ] [ "length": data_type_length ] } ] }

In der folgenden Tabelle werden die einzelnen Parameter beschrieben.

Parameter Mögliche Werte Description
rule-type transformation

Ein Wert, der die Regel auf jedes vom Objektlocator angegebene Objekt anwendet.

Setzen Sie diesen Wert für alle Transformationsregeln auftransformation.

Erforderlicher Parameter.

rule-id Ein numerischer Wert (Ganzzahl).

Ein eindeutiger numerischer Wert zur Identifizierung der Regel.

Erforderlicher Parameter.

rule-name Ein alphanumerischer Wert.

Ein eindeutiger Name zur Identifizierung der Regel.

Erforderlicher Parameter.

rule-action add-prefix, remove-prefix, replace-prefix, add-suffix, remove-suffix, replace-suffix, convert-uppercase, convert-lowercase, rename, change-data-type

Die Transformation, die Sie auf das Objekt anwenden möchten. Bei allen Transformationsregelaktionen wird zwischen Groß- und Kleinschreibung unterschieden.

Präfix-Operationen:

  • add-prefix— Fügt einen bestimmten Text am Anfang eines Namens hinzu.

  • remove-prefix— Löscht einen bestimmten Text am Anfang eines Namens.

  • replace-prefix— Ersetzt ein vorhandenes Präfix durch ein neues.

Suffix-Operationen:

  • add-suffix— Fügt einen bestimmten Text am Ende eines Namens hinzu.

  • remove-suffix— Löscht einen bestimmten Text am Ende eines Namens.

  • replace-suffix— Ersetzt ein vorhandenes Suffix durch ein neues.

Konvertierung von Groß- und Kleinschreibung

  • convert-uppercase— Konvertiert alle Zeichen in einem Namen in Großbuchstaben.

  • convert-lowercase— Konvertiert alle Zeichen in einem Namen in Kleinbuchstaben.

Direkte Änderung:

  • rename— Ändern Sie den Namen in einen völlig neuen angegebenen Wert.

  • change-data-type— Ändert den Datentyp einer Spalte oder lokalen Variablen auf einen anderen Datentyp.

Geltungsbereich: Operationen zur Konvertierung von Präfix, Suffix, Umbenennen und Groß- und Kleinschreibung können auf Schemas, Tabellen und Spalten angewendet werden.

Die change-data-type Operation gilt nur für Spalten, Funktionsrückgabewerte, Routineparameter und lokale Variablen.

Erforderlicher Parameter.

rule-target database, schema, table, view, column, function result, routine parameter, local variable

Der Objekttyp, auf den die Regel angewendet wird.

  • database— Datenbank.

  • schema— Datenbankschema.

  • table— Datenbanktabelle.

  • view— Datenbankansicht.

  • column— Datenbanktabelle oder Ansichtsspalte.

  • function result— Rückgabewert der Funktion.

  • routine parameter— Gespeicherte Prozedur oder Funktionsparameter.

  • local variable— Lokale Variable innerhalb einer gespeicherten Prozedur oder Funktion.

Erforderlicher Parameter.

object-locator Ein JSON-Objekt.

Ein Objekt, das identifiziert, für welche Quelldatenbankobjekte die Regel gilt. Sie können das Prozentzeichen (%) als Platzhalter für den gesamten oder einen Teil des Werts in jedem object-locator Objektfeld verwenden.

Das Objekt enthält die folgenden Zeichenkettenfelder:

  • database-name

  • schema-name

  • table-name

  • column-name

  • parent

  • function-name

  • procedure-name

  • parameter-name

  • local-variable-name

  • type

  • precision

  • scale

  • length

Bei allen Objektnamen, z. B. Tabellen- oder Spaltennamen, in Transformationsregeln wird zwischen Groß- und Kleinschreibung unterschieden.

In den folgenden Abschnitten werden die einzelnen Objektfelder beschrieben.

Erforderlicher Parameter.

object-locator | database-name Ein alphanumerischer Wert, der den Benennungsregeln für die Quelldatenbank entspricht.

Der Name der Quelldatenbank.

Gilt für Datenbankanbieter, bei denen die Datenbankarchitektur aus der Datenbank als Objektcontainer der obersten Ebene stammt. Zum Beispiel: Microsoft SQL Server, SAP ASE.

Optionales JSON-Objektfeld.

object-locator | schema-name Ein alphanumerischer Wert, der den Benennungsregeln für die Quelldatenbank entspricht.

Der Name des Quelldatenbankschemas.

Optionales JSON-Objektfeld.

object-locator | table-name Ein alphanumerischer Wert, der den Benennungsregeln für die Quelldatenbank entspricht.

Der Name der Quelldatenbanktabelle.

Optionales JSON-Objektfeld.

object-locator | column-name Ein alphanumerischer Wert, der den Benennungsregeln für die Quelldatenbank entspricht.

Der Name der Tabellenspalte der Quelldatenbank.

Optionales JSON-Objektfeld.

object-locator | parent Ein alphanumerischer Wert, der den Benennungsregeln für die Quelldatenbank entspricht.

Der Name des Quelldatenbankobjekts, das dem angegebenen Objekt übergeordnet ist, z. B. für das function-name oderprocedure-name.

In Datenbanken einiger Hersteller ist das Objekt, auf das die Regel angewendet wird, möglicherweise untergeordnet und erfordert die Angabe seines übergeordneten Objekts.

Zum Beispiel Funktionspakete in Oracle, wobei das übergeordnete Element der Paketname ist.

Optionales JSON-Objektfeld.

object-locator | function-name Ein alphanumerischer Wert, der den Benennungsregeln für die Quelldatenbank entspricht.

Der Name der Quelldatenbankfunktion.

Optionales JSON-Objektfeld.

object-locator | procedure-name Ein alphanumerischer Wert, der den Benennungsregeln für die Quelldatenbank entspricht.

Der Name der Quelldatenbankprozedur.

Optionales JSON-Objektfeld.

object-locator | parameter-name Ein alphanumerischer Wert, der den Benennungsregeln für die Quelldatenbank entspricht.

Der Name der Funktion oder des Prozedurparameters der Quelldatenbank.

Optionales JSON-Objektfeld.

object-locator | local-variable-name Ein alphanumerischer Wert, der den Benennungsregeln für die Quelldatenbank entspricht.

Der Name einer lokalen Variablen innerhalb der Quelldatenbankfunktion oder -prozedur.

Optionales JSON-Objektfeld.

object-locator | type Ein alphanumerischer Wert.

Der Name des Quelldatentyps, der zugeordnet werden soll. Verwenden Sie dieses Feld, um die Regel nur auf Objekte mit einem bestimmten Datentyp anzuwenden.

Optionales JSON-Objektfeld.

object-locator | precision Ein numerischer Wert (Ganzzahl).

Die Genauigkeit des entsprechenden Quelldatentyps.

Optionales JSON-Objektfeld.

object-locator | scale Ein numerischer Wert (Ganzzahl).

Die Skala des entsprechenden Quelldatentyps.

Optionales JSON-Objektfeld.

object-locator | length Ein numerischer Wert (Ganzzahl).

Die Länge des Quelldatentyps, der übereinstimmen soll.

Optionales JSON-Objektfeld.

value Ein alphanumerischer Wert, der den Benennungsregeln für die Zieldatenbank entspricht.

Der von der Transformationsaktion verwendete Textwert. Für add-prefix und gibt den Text anadd-suffix, der hinzugefügt werden soll. Für remove-prefix und gibt den Text anremove-suffix, der entfernt werden soll. Für replace-prefix und replace-suffix gibt den Ersatztext an. Fürrename, gibt den neuen Namen an.

Erforderlich für alle Aktionen außer convert-uppercaseconvert-lowercase, undchange-data-type.

old-value Ein alphanumerischer Wert, der den Benennungsregeln für die Quelldatenbank entspricht.

Der vorhandene Wert, der im Objektnamen gesucht und ersetzt werden soll. Erforderlich für Aktionen wie replace-prefix undreplace-suffix.

Optionaler Parameter.

data-type Ein JSON-Objekt.

Ein Objekt, das Eigenschaften eines Ersatzdatentyps beschreibt, wenn dies der rule-action Fall istchange-data-type.

Das -Objekt enthält die folgenden Felder:

  • type: Zeichenfolge

  • precision: Zahl

  • scale: Zahl

  • length: Zahl

In den folgenden Abschnitten werden die einzelnen Objektfelder beschrieben.

Optionaler Parameter.

data-type | type Ein alphanumerischer Wert.

Der Name des Ersatzdatentyps für die Zieldatenbankspalte, falls rule-action jachange-data-type. Muss ein gültiger Zieldatenbank-Datentyp sein.

Erforderliches JSON-Objektfeld.

data-type | precision Ein numerischer Wert (Ganzzahl).

Die Genauigkeit des Ersatzdatentyps für die Zieldatenbankrule-action, change-data-type falls

Optionales JSON-Objektfeld.

data-type | scale Ein numerischer Wert (Ganzzahl).

Die Skala des Ersatzdatentyps für die Zieldatenbank, falls rule-action jachange-data-type.

Optionales JSON-Objektfeld.

data-type | length Ein numerischer Wert (Ganzzahl).

Die Länge des Ersatzdatentyps für die Zieldatenbankrule-action, change-data-type falls

Optionales JSON-Objektfeld.

Beispiele für Transformationsregeln

Die folgenden Beispiele zeigen den JSON-Wert für den --transformation-rules Parameter für verschiedene Regeltypen:

Im folgenden Beispiel werden diese Aktionen bei der Konvertierung von der Quell- in die Zieldatenbank ausgeführt:

  • Präfix DW_ zum Schema hinzufügenSALES.

  • Fügen Sie der Tabelle ORDERS im Schema ein Präfix FACT_ hinzuSALES.

  • Fügen Sie der Spalte OLD_ in UNIT_PRICE der Tabelle PRODUCTS im Schema ein Präfix hinzuSALES.

{ "rules": [ { "rule-id": 5, "rule-type": "transformation", "rule-name": "add-prefix-schema-sales", "rule-action": "add-prefix", "rule-target": "schema", "object-locator": { "schema-name": "SALES" }, "value": "DW_" }, { "rule-id": 12, "rule-type": "transformation", "rule-name": "add-prefix-table-orders", "rule-action": "add-prefix", "rule-target": "table", "object-locator": { "schema-name": "SALES", "table-name": "ORDERS" }, "value": "FACT_" }, { "rule-id": 27, "rule-type": "transformation", "rule-name": "add-prefix-column-unit-price", "rule-action": "add-prefix", "rule-target": "column", "object-locator": { "schema-name": "SALES", "table-name": "PRODUCTS", "column-name": "UNIT_PRICE" }, "value": "OLD_" } ] }

Im folgenden Beispiel werden diese Aktionen bei der Konvertierung von der Quell- zur Zieldatenbank ausgeführt:

  • Entfernen Sie das Präfix SRC_ aus dem SchemaSRC_FINANCE.

  • Entfernen Sie das Präfix TMP_ aus TMP_INVOICES der Tabelle im SchemaSRC_FINANCE.

  • Entfernen Sie das Präfix PAID_ aus PAID_AMOUNT der Spalte in TMP_PAYMENTS der Tabelle im SchemaSRC_FINANCE.

{ "rules": [ { "rule-id": 3, "rule-type": "transformation", "rule-name": "remove-prefix-schema-src-finance", "rule-action": "remove-prefix", "rule-target": "schema", "object-locator": { "schema-name": "SRC_FINANCE" }, "value": "SRC_" }, { "rule-id": 18, "rule-type": "transformation", "rule-name": "remove-prefix-table-tmp-invoices", "rule-action": "remove-prefix", "rule-target": "table", "object-locator": { "schema-name": "SRC_FINANCE", "table-name": "TMP_INVOICES" }, "value": "TMP_" }, { "rule-id": 41, "rule-type": "transformation", "rule-name": "remove-prefix-column-paid-amount", "rule-action": "remove-prefix", "rule-target": "column", "object-locator": { "schema-name": "SRC_FINANCE", "table-name": "TMP_PAYMENTS", "column-name": "PAID_AMOUNT" }, "value": "PAID_" } ] }

Im folgenden Beispiel werden diese Aktionen bei der Konvertierung von der Quell- in die Zieldatenbank ausgeführt:

  • Ersetzen Sie das Präfix OLD_ durch NEW_ im SchemaOLD_INVENTORY.

  • Ersetzen Sie das Präfix STG_ durch INT_ in STG_WAREHOUSES der Tabelle im SchemaOLD_INVENTORY.

  • Ersetzen Sie das Präfix SRC_ durch eine Spalte TGT_ SRC_WAREHOUSE_CODE in STG_WAREHOUSES der Tabelle im SchemaOLD_INVENTORY.

{ "rules": [ { "rule-id": 7, "rule-type": "transformation", "rule-name": "replace-prefix-schema-old-inventory", "rule-action": "replace-prefix", "rule-target": "schema", "object-locator": { "schema-name": "OLD_INVENTORY" }, "value": "NEW_", "old-value": "OLD_" }, { "rule-id": 22, "rule-type": "transformation", "rule-name": "replace-prefix-table-stg-warehouses", "rule-action": "replace-prefix", "rule-target": "table", "object-locator": { "schema-name": "OLD_INVENTORY", "table-name": "STG_WAREHOUSES" }, "value": "INT_", "old-value": "STG_" }, { "rule-id": 35, "rule-type": "transformation", "rule-name": "replace-prefix-column-src-warehouse-code", "rule-action": "replace-prefix", "rule-target": "column", "object-locator": { "schema-name": "OLD_INVENTORY", "table-name": "STG_WAREHOUSES", "column-name": "SRC_WAREHOUSE_CODE" }, "value": "TGT_", "old-value": "SRC_" } ] }

Im folgenden Beispiel werden diese Aktionen bei der Konvertierung von der Quell- zur Zieldatenbank ausgeführt:

  • Fügen Sie dem Schema HR_ARCHIVE ein Suffix _HIST hinzu.

  • Fügen Sie der Tabelle JOB_CHANGES im Schema _HIST ein Suffix hinzu. HR_ARCHIVE

  • Fügen Sie der Spalte CREATED_AT in der Tabelle EMPLOYEE_SALARIES im Schema ein Suffix _TS hinzu. HR_ARCHIVE

{ "rules": [ { "rule-id": 9, "rule-type": "transformation", "rule-name": "add-suffix-schema-hr-archive", "rule-action": "add-suffix", "rule-target": "schema", "object-locator": { "schema-name": "HR_ARCHIVE" }, "value": "_HIST" }, { "rule-id": 16, "rule-type": "transformation", "rule-name": "add-suffix-table-job-changes", "rule-action": "add-suffix", "rule-target": "table", "object-locator": { "schema-name": "HR_ARCHIVE", "table-name": "JOB_CHANGES" }, "value": "_HIST" }, { "rule-id": 44, "rule-type": "transformation", "rule-name": "add-suffix-column-created-at", "rule-action": "add-suffix", "rule-target": "column", "object-locator": { "schema-name": "HR_ARCHIVE", "table-name": "EMPLOYEE_SALARIES", "column-name": "CREATED_AT" }, "value": "_TS" } ] }

Im folgenden Beispiel werden diese Aktionen bei der Konvertierung von der Quell- zur Zieldatenbank ausgeführt:

  • Suffix _FILES aus dem Schema LEGAL_FILES entfernen.

  • Entfernen Sie das Suffix _V1 aus der Tabelle CLAUSES_V1 im Schema. LEGAL_FILES

  • Entfernen Sie das Suffix _CODE aus der Spalte COUNTRY_CODE in der Tabelle CONTRACTS_V1 im Schema. LEGAL_FILES

{ "rules": [ { "rule-id": 6, "rule-type": "transformation", "rule-name": "remove-suffix-schema-legal-files", "rule-action": "remove-suffix", "rule-target": "schema", "object-locator": { "schema-name": "LEGAL_FILES" }, "value": "_FILES" }, { "rule-id": 14, "rule-type": "transformation", "rule-name": "remove-suffix-table-clauses-v1", "rule-action": "remove-suffix", "rule-target": "table", "object-locator": { "schema-name": "LEGAL_FILES", "table-name": "CLAUSES_V1" }, "value": "_V1" }, { "rule-id": 31, "rule-type": "transformation", "rule-name": "remove-suffix-column-country-code", "rule-action": "remove-suffix", "rule-target": "column", "object-locator": { "schema-name": "LEGAL_FILES", "table-name": "CONTRACTS_V1", "column-name": "COUNTRY_CODE" }, "value": "_CODE" } ] }

Im folgenden Beispiel werden diese Aktionen bei der Konvertierung von der Quell- zur Zieldatenbank ausgeführt:

  • Ersetzen Sie das Suffix _DEV durch _PROD im SchemaREPORTING_DEV.

  • Ersetzen Sie das Suffix _RPT durch _REPORT in der Tabelle MONTHLY_RPT im Schema. REPORTING_DEV

  • Ersetzen Sie das Suffix _ID durch eine Spalte _KEY CUSTOMER_ID in der Tabelle MONTHLY_RPT im Schema. REPORTING_DEV

{ "rules": [ { "rule-id": 8, "rule-type": "transformation", "rule-name": "replace-suffix-schema-reporting-dev", "rule-action": "replace-suffix", "rule-target": "schema", "object-locator": { "schema-name": "REPORTING_DEV" }, "value": "_PROD", "old-value": "_DEV" }, { "rule-id": 23, "rule-type": "transformation", "rule-name": "replace-suffix-table-monthly-rpt", "rule-action": "replace-suffix", "rule-target": "table", "object-locator": { "schema-name": "REPORTING_DEV", "table-name": "MONTHLY_RPT" }, "value": "_REPORT", "old-value": "_RPT" }, { "rule-id": 47, "rule-type": "transformation", "rule-name": "replace-suffix-column-customer-id", "rule-action": "replace-suffix", "rule-target": "column", "object-locator": { "schema-name": "REPORTING_DEV", "table-name": "MONTHLY_RPT", "column-name": "CUSTOMER_ID" }, "value": "_KEY", "old-value": "_ID" } ] }

Im folgenden Beispiel werden diese Aktionen bei der Konvertierung von der Quell- zur Zieldatenbank ausgeführt:

  • Konvertiert alle Zeichen im Namen des Schemas CRM_LEGACY in Großbuchstaben.

  • Konvertiert alle Zeichen im Namen der Tabelle CUSTOMER_ACCOUNTS im Schema CRM_LEGACY in Großbuchstaben.

  • Konvertiert alle Zeichen im Namen der Spalte FIRST_NAME in der Tabelle im Schema CUSTOMER_ACCOUNTS CRM_LEGACY in Großbuchstaben.

{ "rules": [ { "rule-id": 4, "rule-type": "transformation", "rule-name": "convert-uppercase-schema-crm-legacy", "rule-action": "convert-uppercase", "rule-target": "schema", "object-locator": { "schema-name": "CRM_LEGACY" } }, { "rule-id": 19, "rule-type": "transformation", "rule-name": "convert-uppercase-table-customer-accounts", "rule-action": "convert-uppercase", "rule-target": "table", "object-locator": { "schema-name": "CRM_LEGACY", "table-name": "CUSTOMER_ACCOUNTS" } }, { "rule-id": 36, "rule-type": "transformation", "rule-name": "convert-uppercase-column-first-name", "rule-action": "convert-uppercase", "rule-target": "column", "object-locator": { "schema-name": "CRM_LEGACY", "table-name": "CUSTOMER_ACCOUNTS", "column-name": "FIRST_NAME" } } ] }

Im folgenden Beispiel werden diese Aktionen bei der Konvertierung von der Quell- in die Zieldatenbank ausgeführt:

  • Konvertiert alle Zeichen im Namen des Schemas LOGISTICS in Kleinbuchstaben.

  • Konvertiert alle Zeichen im Namen der Tabelle SHIPMENT_ORDERS im Schema LOGISTICS in Kleinbuchstaben.

  • Konvertiert alle Zeichen im Namen der Spalte DESTINATION_CITY in der Tabelle im Schema SHIPMENT_ORDERS LOGISTICS in Kleinbuchstaben.

{ "rules": [ { "rule-id": 11, "rule-type": "transformation", "rule-name": "convert-lowercase-schema-logistics", "rule-action": "convert-lowercase", "rule-target": "schema", "object-locator": { "schema-name": "LOGISTICS" } }, { "rule-id": 25, "rule-type": "transformation", "rule-name": "convert-lowercase-table-shipment-orders", "rule-action": "convert-lowercase", "rule-target": "table", "object-locator": { "schema-name": "LOGISTICS", "table-name": "SHIPMENT_ORDERS" } }, { "rule-id": 52, "rule-type": "transformation", "rule-name": "convert-lowercase-column-destination-city", "rule-action": "convert-lowercase", "rule-target": "column", "object-locator": { "schema-name": "LOGISTICS", "table-name": "SHIPMENT_ORDERS", "column-name": "DESTINATION_CITY" } } ] }

Im folgenden Beispiel werden diese Aktionen bei der Konvertierung von der Quell- in die Zieldatenbank ausgeführt:

  • Schema umbenennen TEST_SCHEMA inTEST_NEW_SCHEMA.

  • Benennen Sie die Tabelle REGIONS im Schema HR um inORG_REGIONS.

  • Benennen Sie die Spalte CITY in LOCATIONS der Tabelle im Schema HR um inORG_CITY_NAME.

{ "rules": [ { "rule-id": 2, "rule-type": "transformation", "rule-name": "rename-schema-test-schema", "rule-action": "rename", "rule-target": "schema", "object-locator": { "schema-name": "TEST_SCHEMA" }, "value": "TEST_NEW_SCHEMA" }, { "rule-id": 15, "rule-type": "transformation", "rule-name": "rename-table-hr-regions", "rule-action": "rename", "rule-target": "table", "object-locator": { "schema-name": "HR", "table-name": "REGIONS" }, "value": "ORG_REGIONS" }, { "rule-id": 38, "rule-type": "transformation", "rule-name": "rename-column-hr-locations-city", "rule-action": "rename", "rule-target": "column", "object-locator": { "schema-name": "HR", "table-name": "LOCATIONS", "column-name": "CITY" }, "value": "ORG_CITY_NAME" } ] }

Im folgenden Beispiel werden diese Aktionen bei der Konvertierung von der Quell- zur Zieldatenbank ausgeführt:

  • Ändern Sie den Datentyp der Spalte SALARY in der Tabelle EMPLOYEES im Schema PAYROLL von NUMBER auf DECIMAL mit einer Genauigkeit von 18 und einer Skala von 4.

  • Ändern Sie den Datentyp der Spalte NOTES in der Tabelle EMPLOYEES im Schema PAYROLL von VARCHAR2 zu VARCHAR mit der Länge 350.

  • Ändern Sie den Datentyp der Spalte HIRE_DATE in der Tabelle EMPLOYEES im Schema PAYROLL von DATE bis TIMESTAMP WITH TIME ZONE mit Genauigkeit 3.

{ "rules": [ { "rule-id": 10, "rule-type": "transformation", "rule-name": "change-datatype-column-salary", "rule-action": "change-data-type", "rule-target": "column", "object-locator": { "schema-name": "PAYROLL", "table-name": "EMPLOYEES", "column-name": "SALARY" }, "data-type": { "type": "DECIMAL", "precision": 18, "scale": 4 } }, { "rule-id": 29, "rule-type": "transformation", "rule-name": "change-datatype-column-notes", "rule-action": "change-data-type", "rule-target": "column", "object-locator": { "schema-name": "PAYROLL", "table-name": "EMPLOYEES", "column-name": "NOTES" }, "data-type": { "type": "VARCHAR", "length": 350 } }, { "rule-id": 56, "rule-type": "transformation", "rule-name": "change-datatype-column-hire-date", "rule-action": "change-data-type", "rule-target": "column", "object-locator": { "schema-name": "PAYROLL", "table-name": "EMPLOYEES", "column-name": "HIRE_DATE" }, "data-type": { "type": "TIMESTAMP WITH TIME ZONE", "precision": 3 } } ] }

Im folgenden Beispiel werden diese Aktionen bei der Konvertierung von der Quell- zur Zieldatenbank ausgeführt:

  • Ändern Sie den Datentyp des Parameters P_AMOUNT in der gespeicherten Prozedur PROCESS_PAYMENT im Schema FINANCE inNUMERIC.

  • Ändern Sie den Datentyp der lokalen Variablen V_TAX_RATE in der gespeicherten Prozedur PROCESS_PAYMENT im Schema FINANCE auf NUMERIC Genauigkeit 10 und Skala 6.

  • Ändern Sie den Datentyp der lokalen Variablen V_DESCRIPTION in der eigenständigen Funktion CALC_DISCOUNT im Schema FINANCE auf CHARACTER mit der Länge 150.

{ "rules": [ { "rule-id": 7, "rule-type": "transformation", "rule-name": "change-datatype-param-p-amount", "rule-action": "change-data-type", "rule-target": "routine parameter", "object-locator": { "schema-name": "FINANCE", "procedure-name": "PROCESS_PAYMENT", "parameter-name": "P_AMOUNT" }, "data-type": { "type": "NUMERIC" } }, { "rule-id": 21, "rule-type": "transformation", "rule-name": "change-datatype-localvar-v-tax-rate", "rule-action": "change-data-type", "rule-target": "local variable", "object-locator": { "schema-name": "FINANCE", "procedure-name": "PROCESS_PAYMENT", "local-variable-name": "V_TAX_RATE" }, "data-type": { "type": "NUMERIC", "precision": 10, "scale": 6 } }, { "rule-id": 43, "rule-type": "transformation", "rule-name": "change-datatype-localvar-v-description", "rule-action": "change-data-type", "rule-target": "local variable", "object-locator": { "schema-name": "FINANCE", "function-name": "CALC_DISCOUNT", "local-variable-name": "V_DESCRIPTION" }, "data-type": { "type": "CHARACTER", "length": 150 } } ] }

Im folgenden Beispiel werden diese Aktionen bei der Konvertierung von der Quell- in die Zieldatenbank ausgeführt:

  • Ändern Sie den Rückgabedatentyp der eigenständigen Funktion GET_PRODUCT_PRICE im Schema FNG_COMPANY inBIGINT.

  • Ändern Sie den Rückgabedatentyp der eigenständigen Funktion CALC_DISCOUNTED_PRICE im Schema FNG_COMPANY inDECIMAL.

  • Ändern Sie den Rückgabedatentyp der verpackten Funktion CALCULATE_TAX innerhalb des Pakets TAX_UTILS im Schema FNG_COMPANY inREAL.

{ "rules": [ { "rule-id": 13, "rule-type": "transformation", "rule-name": "change-result-type-get-product-price", "rule-action": "change-data-type", "rule-target": "function result", "object-locator": { "schema-name": "FNG_COMPANY", "function-name": "GET_PRODUCT_PRICE" }, "data-type": { "type": "BIGINT" } }, { "rule-id": 28, "rule-type": "transformation", "rule-name": "change-result-calc-discounted-price", "rule-action": "change-data-type", "rule-target": "function result", "object-locator": { "schema-name": "FNG_COMPANY", "function-name": "CALC_DISCOUNTED_PRICE" }, "data-type": { "type": "DECIMAL" } }, { "rule-id": 61, "rule-type": "transformation", "rule-name": "change-result-type-calculate-tax", "rule-action": "change-data-type", "rule-target": "function result", "object-locator": { "schema-name": "FNG_COMPANY", "parent": "TAX_UTILS", "function-name": "CALCULATE_TAX" }, "data-type": { "type": "REAL" } } ] }

Im folgenden Beispiel werden diese Aktionen bei der Konvertierung von der Quell- in die Zieldatenbank ausgeführt:

  • Fügen Sie allen SchemasMIGR_, deren Namen mit STG_ beginnen, ein Präfix hinzu.

  • Fügen Sie allen Tabellen in allen Schemas, deren Namen mit beginnen, ein Präfix MIGR_ hinzu. STG_

  • Fügen Sie allen Spalten_NEW, deren Namen mit beginnen, in allen Tabellen SRC_ in allen Schemas, deren Namen mit beginnen, ein Suffix hinzu. STG_

{ "rules": [ { "rule-id": 8, "rule-type": "transformation", "rule-name": "add-prefix-schemas-starting-with-stg", "rule-action": "add-prefix", "rule-target": "schema", "object-locator": { "schema-name": "STG_%" }, "value": "MIGR_" }, { "rule-id": 33, "rule-type": "transformation", "rule-name": "add-prefix-all-tables-in-stg-schemas", "rule-action": "add-prefix", "rule-target": "table", "object-locator": { "schema-name": "STG_%", "table-name": "%" }, "value": "MIGR_" }, { "rule-id": 57, "rule-type": "transformation", "rule-name": "add-suffix-columns-starting-with-src", "rule-action": "add-suffix", "rule-target": "column", "object-locator": { "schema-name": "STG_%", "table-name": "%", "column-name": "SRC_%" }, "value": "_NEW" } ] }