Zugriff auf Oracle-Daten mit dem neuen Managed Provider von .NET

Ein sehr positiver Aspekt der .NET-Umgebung ist, dass die Zugangskennung für die Datenbank unabhängig von der Backend-Datenbank generell dem gleichen Schema folgt. Zunächst muss eine Verbindung hergestellt werden, anschließend wird die SQL-Anweisung bzw. der Befehl konfiguriert. Schließlich wird SQL ausgeführt, die Ergebnisse werden manipuliert.

Man kann also davon ausgehen, dass sich der zum Arbeiten mit einer Oracle-Datenbank erforderliche Code nicht besonders von dem unterscheidet, mit dem auf SQL Server zugegriffen wird. Die Namen der Objekte sind anders. Wie aus dem VB.Net-Code in Listing A ersichtlich, ist die Aufbereitung ähnlich; eine Verbindung wird hergestellt, ein Befehlsobjekt für die Rückgabe aller Zeilen aus einer hypothetischen PEOPLE-Tabelle wird erstellt, und die Daten werden mit einem OracleDataReader (analog zu den SqlDataReader- und OleDbDataReader-Objekten) gelesen.

Hat man bereits mit SQL Server oder einem anderen .NET Provider gearbeitet, erkennt man schnell die Ähnlichkeit der in Oracle benutzten Klassennamen. So heißt zum Beispiel die SQL Server-Verbindung SqlConnection, während die Oracle-Verbindung den Namen OracleConnection führt.

Nach Fehlern Ausschau schalten

Wie bei jeder .NET-Entwicklung sollte auf Unterbrechungen genau geachtet werden, um beim Datenzugriff eine korrekte Programmausführung zu gewährleisten. Der OracleClient-Namespace beinhaltet eine Oracle-bezogene Ausnahmeklasse, die in dem standardmäßigen try-catch-Block genutzt werden kann. Der in Listing B gezeigte Code bedient sich dieser Methode, um etwaige Ausnahmen zu erkennen. Ein Beispiel einer aktiven Ausnahmebehandlung ist in Listing B zu ersehen.

Obwohl die OracleDataReader-Klasse innerhalb dieses Artikels benutzt wurde, beinhaltet der Oracle-Datenprovider Versionen aller standardmäßigen ADO.NET-Klassen wie z. B. OracleDataSet und OracleDataAdapter. Microsofts .NET Managed Provider Für Oracle bietet das erforderliche Tool, um programmspezifisch auf Oracle-Daten zuzugreifen, mit einer im Vergleich zum OLE-DB-Zugang besseren Leistung. Und glücklicherweise sind die ADO.NET-Klassen so strukturiert, dass unabhängig von der jeweiligen Datenbank die gleiche Methode für den Zugriff auf eine Datenbank mit ähnlichen Objekten verwendet wird. Hierdurch dürfte es einfach sein, OLE-DB-Objekte für eine Nutzung des Oracle-Providers anzupassen.

Page: 1 2

ZDNet.de Redaktion

Recent Posts

Microsoft stellt kleines KI-Modell Phi-3 Mini vor

Seine Trainingsdaten umfassen 3,8 Milliarden Parameter. Laut Microsoft bietet es eine ähnliche Leistung wie OpenAIs…

4 Tagen ago

Google schließt kritische Sicherheitslücke in Chrome

Sie erlaubt eine Remotecodeausführung außerhalb der Sandbox. Betroffen sind Chrome für Windows, macOS und Linux.

4 Tagen ago

Microsoft beseitigt Fehler im März-Sicherheitsupdate für Exchange Server

Probleme treten vor allem bei Nutzern von Outlook Web Access auf. Das optionale Hotfix-Update für…

4 Tagen ago

Neue iPads: Apple kündigt Event für 7. Mai an

Die Einladung zeigt einen zeichnenden Apple Pencil. Der wiederum deutet auf neue iPads hin. Es…

4 Tagen ago

EU-Parlament stimmt für Recht auf Reparatur

Die Richtlinie erhält 584 Ja-Stimmen und 3 Gegenstimmen. Das „Recht auf Reparatur“ beinhaltet unter bestimmten…

5 Tagen ago

Forscher entwickeln Exploits per GPT-4 aus Sicherheitswarnungen

Die Tests basieren auf tatsächlich existierenden Sicherheitslücken. GPT-4 erreicht eine Erfolgsquote von 87 Prozent. Alle…

5 Tagen ago