Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Wie verwende ich Oracle von .NET?

Der einfachste Weg, das Problem zu erklären, besteht darin, auf den Unterschied zwischen dem Oracle-Client und den ODAC-Client-Bibliotheken hinzuweisen.

Auf einem 64-Bit-Rechner (Windows 7+) müssen Sie den 64-Bit-Oracle-Client installiert haben. Dies ist der Client, den Ihr Computer verwendet, um eine Verbindung zu Oracle-Datenbanken herzustellen, die lokal auf Ihrem Computer bereitgestellt werden. Für Apps, die auf einem Webserver oder einem anderen Terminalserver gehostet werden, gilt dieselbe Regel.

Der Trick ist folgender:Als Entwickler müssen unsere Maschinen auch über die .Net-IDE-Tools verfügen. Oracle hat eine beschissene Namenskonvention, aber im Wesentlichen gibt es 2 Teile:ODT (Werkzeuge) und ODAC (Datenzugriff). Der ODP.Net-Datenprovider ist Teil der ODAC-Bibliotheken.

Also ... zurück zur IDE ... Visual Studio ist 32-Bit und daher müssen wir die obigen Tools in 32-Bit installieren.

Beim Entwickeln, Debuggen usw. verwendet VS.Net die 32-Bit-Clientbibliotheken und Datenzugriffsbibliotheken, um mit Oracle zusammenzuarbeiten.

Sobald Sie diese Anwendung auf einem Computer bereitstellen, verwendet sie den Client, der auf dem Computer geladen ist, es sei denn, eine bestimmte Plattform ist das Ziel.

Das bedeutet, wenn Sie 32 anvisieren und auf 64 bereitstellen, wird es brechen ... und umgekehrt. Das Beste, was Sie tun können, ist, es im Abschnitt "Beliebige Plattform" zu belassen und sich einfach daran zu erinnern, was zum Teufel Sie tun :)

Die andere Sache, bei der Sie vorsichtig sein sollten, ist sicherzustellen, dass sowohl Ihre Client- als auch Ihre ODAC-Pakete dieselbe Version haben ... Sie möchten keinen 11g R2-Client und 11g R5 ODAC haben, denn sobald Sie bereitstellen, bricht der Mist wieder zusammen.

Der Vorbehalt hier ist, wenn Sie den Oracle-Client in Ihre Anwendung "eingebetten" möchten, in diesem Fall werden OraOps zusammen mit mehreren anderen Bibliotheken mit der Anwendung bereitgestellt - dies wird als Instant Client von Oracle bezeichnet und ist auch Teil des ODAC-Pakets und enthalten auch in ihrem ausgewachsenen Client-Paket.

Die gute Nachricht...

Oracle wird bald (Q1 2013) sein nächstes ODP.Net-Paket veröffentlichen … das eine vollständig verwaltete Code-Bibliothek sein wird … was bedeutet, dass kein separates Client- oder ODAC-Paket mehr zum Abgleichen erforderlich ist, und die Plattform wird 32 nicht kennen und 64-Bit-Unterscheidungen ... es wird ähnlich funktionieren wie die alte Microsoft-Bibliothek, nur dass es von Oracle mit einem robusteren Funktionsumfang erstellt und gewartet wird. Ich wünschte nur, es würde früher ankommen.