NodeJs連接Oracle數據庫


nodejs連接oracle數據庫,各個平台的官方詳情文檔:https://github.com/oracle/node-oracledb/blob/master/INSTALL.md

我的nodejs連接Oracle的配置,運行環境:

windows7 x64

nodejs 0.12.7

Python 2.7.10

npm 2.11.3

運行原理分析

npm調用下載,下載成功之后交由oracle客戶端解析驅動包,解析成功之后,執行完成,目錄node_modules生成oracledb模塊;

程序運行時調用oracle sdk執行代碼編譯,程序運行邏輯處理,輸出頁面結果。

實現步驟簡介

1、下載解壓需要安裝包(2個)

2、添加環境變量

3、npm執行安裝命令

4、查詢demo代碼

5、常見錯誤解決方案

 

安裝詳情

1、下載解壓需要安裝包(2個)

下載頁面:http://www.oracle.com/technetwork/topics/winx64soft-089540.html

下載名稱:

instantclient-basiclite-windows.x64-12.1.0.2.0.zip

instantclient-sdk-windows.x64-12.1.0.2.0.zip

把兩個文件解壓到“C:\oracle\instantclient_12_1”文件目錄不同,不會相互覆蓋。 

2、添加環境變量

OCI_INC_DIR=C:\oracle\instantclient_12_1\sdk\include

OCI_LIB_DIR=C:\oracle\instantclient_12_1\sdk\lib\msvc

 

注意!如果本機安裝oracle服務器端,請把次環境變量如下地址:

OCI_INC_DIR = C:\app\Administrator\product\11.2.0\dbhome_1\oci\include

OCI_LIB_DIR = C:\app\Administrator\product\11.2.0\dbhome_1\OCI\lib\MSVC

3、npm執行安裝命令

npm install oracledb

4、查詢demo代碼

router.get('/', function (req, res, next) {

    var oracledb = require('oracledb');
    oracledb.getConnection(
        {
            user: 'username',
            password: 'password',
            connectString: '192.168.20.10:1521/ORCL'
        },
        function (err, connection) {
            if (err) {
                console.error(err.message);
                return;
            }
            connection.execute(
                "SELECT * from CMS_FIlE where content_id=:id",
                [1072],  // bind value for :id
                function (err, result) {
                    if (err) {
                        console.error(err.message);
                        return;
                    }
                    res.render('index', {title: '查詢信息:' + JSON.stringify(result.rows)});
                });
        });

});

執行后,展現效果,如圖:

5、常見錯誤解決方案

錯誤信息,如下:

The specified procedure could not be found. 

c:\xxx\oracledb.node

解放方案:服務器安裝版本與環境變量的OCI_INC_DIR、OCI_LIB_DIR版本不符,設置版本為一致的即可,參照上面步驟2,配置完成之后,刪除之前下載的oracledb模塊,重新下載oracledb模塊(npm install oracledb)即可。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM