OurJS


OurJS-我们的JS, 我们的技术-IT文摘; 专注JS相关领域;
我们热爱编程, 我们热爱技术;我们是高大上, 有品味的码农;

欢迎您订阅我们的技术周刊


我们会向您分享我们精心收集整理的,最新的行业资讯,技术动态,外文翻译,热点文章;
我们使用第三方邮件列表向您推送,我们不保存您的任何个人资料,注重您的隐私,您可以随时退订,

欢迎分享您的观点,经验,技巧,心得

让我们一起找寻程序员的快乐,探索技术, 发现IT人生的乐趣;


本网站使用缓存技术每次加载仅需很小流量, 可在手机中流畅浏览;
如果您发现任何BUG,请即时告知我们: ourjs(at)ourjs.com

Oracle发布官方版Node.JS数据库驱动


分享到
分类 JS开源   关键字 Node.JS   发布 ourjs  1422767463508
注意 转载须保留原文链接,译文链接,作者译者等信息。  
注* 近日Oracle发布了官方版的Node.JS数据库驱动 node-oracledb,其他主流SQL数据库的Node.JS驱动: MySQL数据库Node.JS驱动:node-mysql; 微软SQL Server数据库Node.JS驱动官方版: node-sqlserver;  从关注人数可以看出Node社区对大型收费关系型(SQL)数据库的热情并不高。

1.关于node-oracledb


为高性能Node.js应用程序设计的Oracle数据库驱动。

node-oracledb0.2支持Oracle基本和先进的功能,包括:

  •   SQL和PL/ SQL执行
  •   使用JavaScript对象或数组绑定
  •   将查询结果以JavaScript对象或数组返回
  •   JavaScript和Oracle之间的数据类型转换
  •   事务管理
  •   连接池
  •   Statement缓存
  •   客户端结果缓存
  •   端到端跟踪
  •   高可用性功能
          快速应用通知(FAN)
          负载均衡(RLB)
          透明的应用程序故障切换(TAF)

node-oracledb0.2是一个预览版。我们正在积极努力增加包括Windows平台的支持,LOB支持,批量抓取/大型结果集查询,流和DRCP支持。

示例:在node-oracledb中执行简单的SELECT,注*带有很重的Java风格

var oracledb = require('oracledb');

oracledb.getConnection(
  {
    user          : "hr",
    password      : "welcome",
    connectString : "localhost/XE"
  },
  function(err, connection)
  {
    if (err) {
      console.error(err.message);
      return;
    }
    connection.execute(
      "SELECT department_id, department_name "
    + "FROM departments "
    + "WHERE department_id = :did",
      [180],
      function(err, result)
      {
        if (err) {
          console.error(err.message);
          return;
        }
        console.log(result.rows);
      });
  });

在Oracle的HR schema(示例数据库),输出为:


[ [ 180, 'Construction' ] ]


这里有更详细的示例代码


2. 安装


只能通过GitHub安装. 基本的步骤如下:

  •   安装Oracle客户端库,或者安装一个本地的免费数据库版本,如Oracel XE
  •   将代码从此仓库Clone到本地
  •   运行npm install

查看详细的安装文档


3 node-oracle


注* 三年前有人为node.js社区发布了“山寨”版的oracle数据库驱动,github项目名node-oracle,在npm中使用了oracle这个模块名,现在Oracle官方版只能在后面多加个db了,下面为node-oracle的示例代码:

var oracle = require('oracle');

var connectData = {
    hostname: "localhost",
    port: 1521,
    database: "xe", // System ID (SID)
    user: "oracle",
    password: "oracle"
}

oracle.connect(connectData, function(err, connection) {
  if (err) { console.log("Error connecting to db:", err); return; }

  connection.execute("SELECT systimestamp FROM dual", [], function(err, results) {
      if (err) { console.log("Error executing query:", err); return; }

      console.log(results);
      connection.close(); // call only when query is finished executing
  });
});



社区评论 ( Beta版 )
  • #0 司屯上 1445926680390


    1. 标题

    ==

    ##

  • #1 贺尘及 1502770452422

    Error: The specified procedure could not be found. \?\D:\oracle_test\node_modules\oracledb\build\Release\oracledb.node at Error (native) at Object.Module._extensions..node (module.js:597:18) at Module.load (module.js:487:32) at tryModuleLoad (module.js:446:12) at Function.Module._load (module.js:438:3) at Module.require (module.js:497:17) at require (internal/module.js:20:19) at Object. (D:\oracle_test\node_modules\oracledb\lib\oracledb.js:27:19) at Module._compile (module.js:570:32) at Object.Module._extensions..js (module.js:579:10)

    这个怎么解决?

OnceDoc 您自己的企业内容管理系统——文档、流程、知识库、报表、网盘All In One

访问404页面,寻找丢失儿童
 热门文章 - 分享最多
  1. 从一行CSS调试代码中学到的JavaScript知识
  2. 5个现在就该使用的数组Array方法: indexOf/filter/forEach/map/reduce详解
  3. 在nodejs中使用Redis缓存和查询数据及Session持久化(Express)
  4. 理解Node.js的事件循环(Event Loop)和线程池
  5. 什么是Viewport Meta(width详解)及在手机上的应用
  6. 即将推出的CSS4 Level 4 Selectors(第4级选择器)
  7. JavaScript中的$$(*)代表什么和$选择器的由来
  8. javaScript 依赖管理
  9. io.js新支持的ECMAScript 6功能特性详解
  10. RedMonk的语言排名:JavaScript,Java保持领先;Go未进前20
  11. AirJD-简单好用的免费建站工具

 相关阅读 - JS开源
  1. Oracle发布官方版Node.JS数据库驱动
  2. 用JavaScript实现的Flash VM播放器(虚拟机)
  3. Chartist.js:一个开源的响应式前端矢量(SVG)图表库
  4. JavaScript中数学运算的安全范围及开源大整数高精度计算库
  5. Webaudio-mod-player:用HTML5音频接口播放mod音乐文件
  6. HexGL用HTML5和WebGL实现的3D赛车游戏
  7. CSS3动画效果速查参照表
  8. LokiJS:用JavaScript实现的面向文档的内存数据库
  9. 基于HTML5和JavaScript实现的Winamp MP3播放器
  10. Walkway用简单的方法为SVG元素添加动画效果

 关键字 - Node.JS
  1. 用纯Node.JS弹出Windows系统消息提示框(MessageBox)
  2. 理解Node.js的事件循环(Event Loop)和线程池
  3. Node.JS中如何快速扫描端口并发现局域网内的Web服务器地址(80)
  4. Express入门教程:一个简单的博客
  5. Node.JS循环递归复制文件夹目录及其子文件夹下的所有文件
  6. Oracle发布官方版Node.JS数据库驱动
  7. 为什么你应该抛弃Express的视图渲染引擎
  8. 在OnceIO(Node.JS)中用Redis储存Session
  9. Node.js中的通用基础设计模式
  10. 沃尔玛为什么要采用Node.js

 欢迎订阅 - 技术周刊

我们热爱编程, 我们热爱技术; 我们是高端, 大气, 上档次, 有品味, 时刻需要和国际接轨的码农; 欢迎您订阅我们的技术周刊; 您只需要在右上角输入您的邮箱即可; 我们注重您的隐私,您可以随时退订.
加入我们吧! 让我们一起找寻码农的快乐,探索技术, 发现IT人生的乐趣;


 关注我们

我们的微信公众号: ourjs-com
打开微信扫一扫即可关注我们:
IT文摘-程序员(码农)技术周刊

ourjs官方微信号