Herstellen einer Verbindung zur Oracle-Datenbank mit Node.js Windows

Ich versuche, eine Verbindung zu einer Oracle-Datenbank von Node.js in Windows 7 herzustellen. Ist dies möglich? Ich habe kein Plugin für Node.js gefunden, das dies für Windows erledigt. Gibt es dafür empfohlene Workarounds? Ich vermute, es gibt mindestens eine andere Person, die Node.js unter Windows verwenden möchte und eine Verbindung zu Oracle herstellen muss. Ich bin offen für einfache Problemumgehungen, wenn dies erforderlich ist. Danke für die Hilfe.

 Matthew Crews04. Apr. 2012, 21:25
Haben Sie empfohlene Ressourcen dafür? Ich habe den Verdacht, dass ich so etwas tun muss, aber ich suche nach Anleitung. Danke für den Kommentar.
 Danny C01. Aug. 2012, 13:13
Ich bin in einem ähnlichen Boot. Hattest du Glück damit?
 Raynos04. Apr. 2012, 21:19
Eine einfache Lösung besteht darin, einen C ++ - Oracle-Treiber zu verwenden und den Zugriff darauf als c ++ - Erweiterung für den Knoten bereitzustellen
 Matthew Crews05. Aug. 2012, 17:56
Es tut mir leid, aber ich habe es nicht getan. Letztendlich musste ich ein Powershell-Skript veranlassen, diese Daten aus der Datenbank zu ziehen und in eine CSV zu speichern. Ich hatte dann NodeJS die Daten in MongoDB ziehen. Es tut mir leid, dass ich keine besseren Nachrichten für Sie habe.
 Raynos04. Apr. 2012, 21:27
Stehlen Sie den Quellcode vonähnliche Projekte

Antworten auf die Frage(5)

http://github.com/mariano/node-db-oracle Dieses Projekt zielt darauf ab, nodejs um Oracle-Unterstützung zu erweitern

BEARBEITEN: Es gibt jetzt einen Office NodeJS-Treiber für Oracle, der von Oracle als Node-Oracle bezeichnet wird

https://blogs.oracle.com/opal/entry/introducing_node_oracledb_a_node

 Matthew Crews16. Apr. 2012, 21:37
Funktioniert leider nicht an Fenstern

ergleich zu den robusten und leistungsstarken Datenbanktreibern, die wir seit Jahren in ADO.NET zur Verfügung haben, etwas unausgereift zu sein.

Ich würde ernsthaft in Betracht ziehenKante Aufrufen von C # oder einer laufenden CLR-Assembly, um auf Ihre Datenbank zuzugreifen. Du könntest eine schreibenRepository Formatieren Sie die Datenzugriffsebene in C # und rufen Sie sie von node.js aus auf.

Ich habe bewiesen, dass dies in einem Entwicklungskontext mit C # funktioniert.PetaPoco (optional), .NET 4.5 und der Oracle ODP-Treiber (Oracle.DataAccess.dll). Dies sollte auch mit jeder Datenbank funktionieren, mit der Sie in .NET kommunizieren können.

Beispiel für einen Knoten (server.js) zum Aufrufen der .NET CLR-Funktion:

<code>var edge = require('edge');

// define CLR function proxy
var getData = edge.func({
    assemblyFile: '../Repositories/bin/Debug/Repositories.dll',
    typeName: 'Repositories.TestRepository',
    methodName: 'GetData' // This must be Func<object,Task<object>>
});

// call proxy function
getData({ myParam:1 }, function (error, result) {
    if (error) throw error;
    console.log(result);
});
</code>

GetData C # sieht folgendermaßen aus (beachten Sie, dass Sie Ihre Verbindungszeichenfolge in node.exe.config in dem Ordner ablegen müssen, der node.exe enthält):

<code>public async Task<object> GetData(object param)
{
    using (var db = new Database("NameOfConnString"))
    {
        return db.Fetch<dynamic>("SELECT * FROM sometable");
    }
}
</code>

(Beachten Sie, dass sich Oracle.DataAccess.dll in dem Ordner befinden muss, der node.exe enthält.)

http://www.oracle.com/technetwork/database/database-technologies/node_js/oracle-node-js-2399407.html

UPDATE: Oracle hat einenode-oracledb Fahrer anGIT Dadurch kann eine NodeJS-Anwendung unter Windows eine Verbindung zu Oracle DB herstellen.

 Benny Bottema12. Juni 2015, 20:56
Hallo, willkommen bei SO! Bitte geben Sie einen Beispielcode an oder erläutern Sie Ihre Antwort: Nur-Link-Antworten veralten in der Regel, wenn Hyperlinks nicht mehr funktionieren. Gibt es noch etwas, das Sie Ihrer Antwort hinzufügen können, um einen Kontext bereitzustellen?
Lösung für das Problem

e Datenbanktransaktionen in einer anderen Sprache schreiben und über einen Webdienst für Node.js verfügbar machen.

 Matthew Crews05. Apr. 2012, 15:52
Ich bin der Meinung, dass die einfachste Lösung darin besteht, einen Datenprovider mit einer anderen Sprache zu erstellen, die mehr Unterstützung bietet. Ich werde versuchen, ein natives Modul zu kompilieren. Der folgende Link ist ein guter Ausgangspunkt:github.com/saary/node.net
 Matthew Crews05. Apr. 2012, 06:40
Idealerweise würde ich von Node.js aus eine direkte Verbindung zu Oracle herstellen. Wenn dies nicht möglich ist, würde ich gerne die einfachste Problemumgehung kennen. Ich bin nicht sicher, wie das Schreiben der Transaktionen in einer anderen Sprache funktionieren würde. Wenn es ein Beispiel dafür gibt, würde ich es gerne sehen.

Ihre Antwort auf die Frage