Wie stelle ich eine Verbindung zu einer Oracle-Datenbank in R her?

8

Ich versuche, das RODBC-Paket zu verwenden, um Daten von einer Oracle-Datenbank mit R abzufragen. Es scheint eine Menge Dokumentation über den Zugriff auf MySQL-Datenbanken von R zu geben, aber nicht viele Informationen über Oracle-Datenbanken.

Wie erstelle ich einen DSN für meine Oracle-Datenbank?

Jede Hilfe wäre sehr willkommen. Danke,

    
AME 29.03.2011, 22:42
quelle

4 Antworten

4

Ich bin jedoch nicht mit "R" vertraut:

Oracle ODBC DSN wird normalerweise von -

eingerichtet
  1. Installation des Instant-Clients
  2. Verwenden des Windows-ODBC-Managers zum Erstellen des DSN
DCookie 30.03.2011, 04:52
quelle
8

Hier sind die Anweisungen, die ich für unsere Website entwickelt habe:

  1. Installieren Sie den Oracle-Sofort-Client. Die zu extrahierenden Dateien sind: instantclient-basic-win32-11.1.0.7.0.zip instantclient-odbc-win32-11.1.0.7.0.zip instantclient-sqlplus-win32-11.1.0.7.0.zip (optional)

Hinweis: Die Pakete Basic Instant Client und ODBC Instant Client müssen in dasselbe Verzeichnis entpackt werden. Beispiel: C: \ Oracle \ instantclient_11_1.

Oracle-Download-Site: Ссылка

  1. Fügen Sie den Pfad der extrahierten Dateien zur Pfadumgebungsvariablen hinzu (z. B. C: \ oracle \ instantclient_11_1). ein. Rechtsklick auf "Arbeitsplatz" auf dem Desktop, klicken Sie auf "Verwalten". b. Klicken Sie mit der rechten Maustaste auf "Computerverwaltung (lokal)", klicken Sie auf "Eigenschaften". c. Klicken Sie auf der Registerkarte Erweitert auf die Schaltfläche Einstellungen unter "Umgebungsvariablen". d. Suchen Sie unter "Systemvariablen" den Eintrag "Pfad" und klicken Sie auf die Schaltfläche Bearbeiten. e. Fügen Sie den Speicherortpfad an dem Ende des "Variable Value" ein. Beachten Sie, dass Elemente durch ein Semikolon getrennt sind. f. Klicken Sie auf OK, um die Änderungen zu bestätigen. Schließen Sie das Fenster Computerverwaltung.

  2. Doppelklicken Sie im Verzeichnis des Instant-Clients auf die Datei odbc_install.exe.

  3. Öffnen Sie C: \ WINDOWS \ system32 \ odbcad32.exe

  4. Fügen Sie eine Datenquelle für die Oracle-Datenbank hinzu. ein. Klicken Sie auf die Schaltfläche Hinzufügen b. Wählen Sie "Oracle in InstantClient11_1" und klicken Sie auf Fertig stellen. c. Geben Sie Folgendes in das Dialogfeld Oracle ODBC-Treiberkonfiguration ein:         Datenquellenname: DSN         Beschreibung: Roacle (oder was auch immer)         TNS-Dienstname: SERVER: 1521 / DSN - Ändern Sie dies         Benutzer-ID: Ihr Oracle-Benutzername d. Klicken Sie auf die Schaltfläche Verbindung testen. Sie werden nach Ihrem Passwort gefragt, und wenn alles gut gegangen ist, erhalten Sie eine Meldung "Verbindung erfolgreich".

Sie können dann einen Kanal in R mit:

erstellen %Vor%     
jbryer 29.03.2012 19:58
quelle
1

Ich habe festgestellt, dass es einige Herausforderungen bei der Verbindung mit Oracle von R gibt. Es könnten nur die Implementation und Einstellungen sein, die wir in meiner Firma haben, aber hier ist, was ich getan habe, um es zum Laufen zu bringen.

%Vor%

Der kritische Schritt für mich war 'believeNRows=FALSE' . Ansonsten habe ich den folgenden Fehler erhalten, als ich eine Anfrage eingereicht habe:

"Fehler in .Call (C_RODBCFetchRows, attr (Kanal," handle_ptr "), max, buffsize,:   negative Längenvektoren sind nicht erlaubt "

Dies liegt daran, dass Oracle der Verbindung nicht die tatsächliche Anzahl der Zeilen zurückgibt.

    
Andrew Elliott 29.03.2012 18:20
quelle
0

Falls jemand anders auf diese alte Frage stolpert und Hilfe benötigt, um Oracle und R zu verbinden, erklärt diese PDF den Prozess vollständig und stellt benötigte Download-Informationen zur Verfügung.

{http://cran.fhcrc.org/web/packages/RODM/RODM.pdf}

    
user761758 06.05.2012 18:09
quelle

Tags und Links