Ressourcen für SQL Server-Entwickler, die auf Oracle migrieren

9

Welche Ressourcen können Sie einem SQL Server-Entwickler empfehlen, der die Grundlagen von Oracle erlernen möchte?

Ich suche ein umfassendes Whitepaper oder einen Blog-Beitrag, in dem Unterschiede zwischen diesen Systemen beschrieben und Fragen wie " Wie erstelle ich eine IDENTITY-Spalte?" Beantwortet werden. oder Welcher Datentyp entspricht float? .

Marek Grzenkowicz
quelle

Antworten:

11

Ich schlage vor, die von Oracle bereitgestellte Dokumentation zu verwenden , da dies die beste Ressource für Oracle-Entwickler ist.

Beginnen Sie mit Konzepten - dies hilft Ihnen, die architektonischen Unterschiede zwischen MSSQL und Oracle zu verstehen. Fahren Sie mit der schnellen Einführung eines 2-Tage-Entwicklers und eines 2-Tage-DBA fort (Sie benötigen grundlegende DBA-Kenntnisse, um Ihren "Spielplatz" zu verwalten). Lesen Sie auch die Datenbankreferenz für Systemtabellen / -ansichten und schließlich die Sprachreferenzen für SQL-, PL / SQL- und PL / SQL-Pakete und -Typen für die bereitgestellten Pakete.

Jedes Dokumentationsbuch kann als PDF heruntergeladen werden, ich bevorzuge jedoch die HTML-Version.

Und wenn Sie nicht weiterkommen, fragen Sie Tom oder hier.

Štefan Oravec
quelle
11

Dieser Kurs spricht mehr aus DBA-Sicht als aus Entwickler-Sicht und ist sehr umfassend. Möglicherweise sind einige Dinge für Sie von Wert, insbesondere die Kapitel Datenobjekte und Datenzugriff . Es wurde aus der Perspektive von Oracle → SQL Server geschrieben, funktioniert aber so oder so. Es geht darum, Konzepte, die Sie bereits kennen, einem etwas anderen Vokabular zuzuordnen.

Aus Erfahrung hier ist der größte Faktor jedoch nicht zu lernen, welche Datentypen welchen entsprechen, sondern die Verschiebung des Denkens über Ihre Anwendung und insbesondere deren Optimierung. Wenn Sie beispielsweise von SQL Server stammen, glauben Sie höchstwahrscheinlich, dass Cursor teuer sind und vermeiden, sie zu verwenden. Nun, in Oracle ist jeder SELECT ein Cursor "unter der Haube"; Alles, was Sie mit einem Cursor tun, ist, Ihnen einen Griff zu geben. In ähnlicher Weise werden Sie in SQL Server (sofern Sie nicht im optimistischen Modus ausgeführt wurden , was nur wenige tun) für Leser verwendet, die Schreiber blockieren, und für Schreiber, die Leser blockieren und codieren, um dieses Szenario zu vermeiden. Oracle verhält sich sehr unterschiedlich, da es ohnehin nur MVCC unterstützt . Clustered-Indizesin SQL Server werden weitaus häufiger verwendet als IOTs in Oracle (ich weiß eigentlich nicht, warum das so ist, es ist nur etwas, was ich beobachtet habe, Oracle-Leute vermissen dort einen Trick).

Solche Dinge sind der Grund, warum Apps, die von einem zum anderen portiert werden, Probleme bekommen ... Es ist nicht so einfach wie das Ändern der SQL-Syntax (wenn es so wäre, hätten Sie genauso gut MySQL verwendet, da Sie nicht den Vorteil davon bekommen all diese Funktionen, für die Sie bezahlt haben!)

Gaius
quelle