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.
Neueste Kommentare
Noch keine Kommentare zu Zugriff auf Oracle-Daten mit dem neuen Managed Provider von .NET
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.