SnowConvert AI – Oracle – Benutzerdefinierte Typen¶
Beschreibung¶
Benutzerdefinierte Datentypen verwenden die in Oracle integrierten Datentypen und andere benutzerdefinierte Datentypen als Bausteine von Objekttypen, die die Struktur und die Verhaltensweise von Daten in Anwendungen modellieren. In den folgenden Abschnitten werden die verschiedenen Kategorien von benutzerdefinierten Typen beschrieben. (Oracle SQL Language Reference User-defined Data Types)
Warnung
Snowflake bietet keine Unterstützung von benutzerdefinierten Typen. Diese Seite soll eine Zusammenfassung der Features von Oracle sein. Informationen zum aktuellen Status von benutzerdefinierten Typen im SnowConvert AI Tool finden Sie auf der Seite zur CREATE TYPE-Anweisung und den entsprechenden Unterseiten.
Objekttypen¶
Bemerkung
SnowConvert AI bietet eine Teilübersetzung für Objekttypen. Weitere Informationen dazu finden Sie im nächsten Abschnitt: Definition von Objekttypen
REF-Datentypen¶
Gefahr
REF-Datentypen werden von SnowConvert AI nicht erkannt und werden stattdessen als nicht erkannte „benutzerdefinierte Funktionen“ angezeigt. Weitere Informationen über diesen Datentypen finden Sie auf der Unterseite zu REF-Datentypen.
Ein Bezeichner (dargestellt durch das Schlüsselwort
OID) identifiziert ein Objekt eindeutig und ermöglicht es Ihnen, von anderen Objekten oder von relationalen Tabellen aus auf das Objekt zu verweisen. Eine Datentypkategorie namensREFsteht für solche Referenzen. EinREFDatentyp ist ein Container für einen Objektbezeichner.REFWerte sind Zeiger auf Objekte. (Oracle SQL Language Reference REF Data Types)
Varrays¶
Warnung
SnowConvert AI erkennt diese Elemente nur, bietet aber keine Übersetzung für sie an. Weitere Informationen dazu finden Sie im nächsten Abschnitt: Definition von Array-Typen
Verschachtelte Tabellen¶
Warnung
SnowConvert AI erkennt diese Elemente nur, bietet aber keine Übersetzung für sie an, da es keine Problemumgehungen für sie gibt. Weitere Informationen dazu finden Sie im nächsten Abschnitt: [Definition verschachtelter Tabellentypen](../../sql-translation -reference/create_type.md#nested-table-type-definition)
Bekannte Probleme¶
1. DML usages for Object Types are not being transformed¶
Ab sofort werden nur noch DDL-Definitionen, die benutzerdefinierte Typen verwenden, in Varianten umgewandelt. Das bedeutet, dass alle Einfügungen, Aktualisierungen oder Löschungen, die benutzerdefinierte Typen verwenden, nicht transformiert werden und manuell transformiert werden müssen. Es gibt keine EWI dafür, aber es gibt ein Work-Element, um dies entsprechend EWI hinzuzufügen.
2. Nested Table types are not being transformed¶
Es gibt keine bekannte Problemumgehung für die Implementierung verschachtelter Tabellen. Aus diesem Grund bietet SnowConvert AI nur eine Erkennung dieser Elemente.
3. Array types are not being transformed¶
Vorerst erkennt SnowConvert AI diese Elemente nur. Es gibt eine bekannte Problemumgehung und auch ein Work-Element zu deren Implementierung.
REF-Datentypen¶
Bemerkung
Einige Teile des Ausgabecodes wurden aus Gründen der Übersichtlichkeit weggelassen.
Beschreibung¶
Ein Bezeichner (dargestellt durch das Schlüsselwort
OID) identifiziert ein Objekt eindeutig und ermöglicht es Ihnen, von anderen Objekten oder relationalen Tabellen aus auf das Objekt zu verweisen. Eine Datentypkategorie namensREFsteht für solche Referenzen. EinREFDatentyp ist ein Container für einen Objektbezeichner.REFWerte sind Zeiger auf Objekte. (Oracle SQL Language Reference REF Data Types)
REF-Datentypen werden in Snowflake nicht unterstützt und es gibt derzeit keine Umgehungsmöglichkeit, um eine ähnliche Komponente zu implementieren.
Ab sofort werden sie als benutzerdefinierte Funktionen erkannt und DANGLING-Klauseln werden nicht erkannt. Schließlich wird die OID-Klausel in der Ansicht entfernt, da es keine Umgehungsmöglichkeit für sie gibt.
Beispielhafte Quellcode-Muster¶
Typen und Tabellen für Referenzen¶
Bitte beachten Sie die folgenden Typen, Tabellen, Einfügungen und Ansichten. Sie werden für den nächsten Abschnitt des Musters verwendet.
Oracle¶
Selects und Views mit REFs¶
Oracle¶
Ergebnis mit verwaisten Referenzen¶
CUSTOMER_REFERENCE.CUST_FIRST_NAME |
EMAIL_REF.EMAIL |
|---|---|
First Name 1 |
abc@def.com |
First Name 2 |
Ergebnis ohne verwaiste Referenzen¶
CUSTOMER_REFERENCE.CUST_FIRST_NAME |
EMAIL_REF.EMAIL |
|---|---|
First Name 1 |
abc@def.com |
Snowflake¶
Bekannte Probleme¶
1. REF und MAKE_REF werden nicht erkannt
Stattdessen werden sie derzeit als benutzerdefinierte Funktionen gekennzeichnet.
2. DANGLING-Klausel wird nicht erkannt
DANGLING-Klauseln verursachen beim Ausführen von SnowConvert Parsing-Fehler.
Zugehörige EWIs¶
SSC-EWI-0001: Nicht erkanntes Token in der Zeile des Quellcodes.
SSC-EWI-0073: Überprüfung auf gleichwertige Funktion ausstehend.
SSC-FDM-0001: Ansichten, die alle Spalten einer einzelnen Tabelle auswählen, sind in Snowflake nicht erforderlich.