当前位置: 首页 > 编程笔记 >

Node.js操作Firebird数据库教程

常波鸿
2023-03-14
本文向大家介绍Node.js操作Firebird数据库教程,包括了Node.js操作Firebird数据库教程的使用技巧和注意事项,需要的朋友参考一下

      Firebird是一个跨平台的关系数据库系统,目前能够运行在Windows、linux和各种Unix操作系统上,提供了大部分SQL-99标准的功能。它既能作为多用户环境下的数据库服务器运行,也提供嵌入式数据库的实现。

  Firebird脱胎于Borland公司的开源版数据库Interbase6.0,是一个完全非商业化的产品,用C和C++开发。

  一个firebird数据库服务器能够管理多个独立的数据库,每一个数据库同时可支持多个客户端连结。总之:它是一个开源的,强大的,可以自由使用的数据库(即使是商业上的使用)。

特点

Firebird是一个真正的关系数据库,支持存储过程、视图、触发器、事务等大型关系数据库的所有特性;

Firebird支持SQL92的绝大部分命令,并且支持大部分SQL99命令,新版Firebird 2.0对SQL99的支持更完整;

Firebird源码基于成熟的商业数据库Interbase,有良好的稳定性,与Interbase有良好的兼容性;
不用考虑授权费用(免费),不用担心将来有一天你或你的客户因为使用盗版而被数据库开发商告上法庭;

发布简易,安装文件只有几M,且高度可定制,客户端的分发也很简单,只需一个DLL文件;
Firebird的一嵌入式服务器版本,不用安装,直接运行,基于单机开发首选;

Firebird的运行效率非常高;

具备高度可移植性,可在Linux,Unix,MacOS,Windows,Solaris系统下运行,而且数据库格式完全一样,不用修改;

开发环境支持良好,Delphi,C++Builder不用通过ODBC连接,直接用原生开发接口开发基于Firebird的程序。

为什么使用FireBird?

  对于小型企业用户而言,现在的开放源码数据库有两点不足:要么太大(如MySQL、PostgreSQL);要么太小,并且缺乏功能和文档(如HypersonicSQL和McKoi)。在很多应用环境中,用户需要有一个大小适中且功能齐备的数据库。

  Firebird相对来说比较小,其RPM版本只有2.6MB。这使其可以称得上是理想的“嵌入式数据库”,可用于与其它应用程序服务器和应用程序捆绑。Firebird具有大部分成熟数据库所具有的功能,比如支持存储过程、SQL兼容等。如果用户有使用DB2或PostgreSQL的经验,就会发现Firebird与它们的语法非常相似,数据类型和数据处理方式也很类似。

安装

  前面讲了那么多关于FireBird的内容,现在开始来讲解如何用Node来操作FireBird。

  如果想通过Node来操作FireBird,首先要安装操作FireBird的模块——node-firebird。如下代码:

npm install node-firebird

  安装完成以后,我们就可以在程序中使用node来操作FireBird了,如下代码:

var FireBird = require('node-firebird');

Connection options

  当我们通过node来操作FireBird时,首先要对数据库连接进行设置,包括连接的ip地址、端口号、数据库名称(可以是包括路径的全名)、连接的用户名、密码。如下代码

 var options = {};
 options.host = '127.0.0.1';          // 设置主机地址
 options.port = 3050;              // 端口号
 options.database = '/home/user/test.fdb';   // 数据库名称
 options.user = 'SYSDBA';            // 用户名
 options.password = 'masterkey';        // 密码

  这样数据库的连接就设置完成了。

escape

  在node-firebird模块中有一个名为escape的方法,它的返回值为String类型。使用该方法可以防止SQL注入,如下代码:

FireBird.escape(value) -> return {String}

实例如下:

var FireBird = require('node-firebird');
var sql1 = 'SELECT * FROM a WHERE ID='+Firebird.escape(2) ;
console.log(sql1);

create

  create方法用于建立数据库,其语法格式如下:

FireBird.create(options, function(err, db));

如下代码:

FireBird.create(options,function(err,db){
  if(err)
    throw err;
  console.log('创建数据库成功');
  db.detach(); //关闭数据库连接
});

注意:当数据库存在时候,用该方法建立数据库会将原数据库覆盖,从而导致数据丢失。

query

  db.query方法的用法前面已经介绍了一些,在这里将继续给大家讲db.query()的用法。当query语句中是查询语句时,返回的结果为对象类型的数组(即result的值)。我们可以使用db.query()对数据库中的表进行添加,修改,删除,更新操作。db.query()有两种用法,一种是无参数的查询,一种是有参数的查询。

有参数的查询:

db.query(query, [params], function(err, result))

实例代码如下向表a中插入数据:

FireBird.attach(options, function(err, db) {
  if (err)
    throw err;
  // db = DATABASE
  db.query('insert into a (id,name) values(?,?)',[1,'Tom'], function(err, result) {
    if (err)
      throw err;
    console.log("insert success!");
    db.detach();
  });
});

实例代码更新a表中的数据:

FireBird.attach(options, function(err, db) {
  if (err)
  throw err;
  // db = DATABASE
  db.query("update a set name='Ann' where id=1", function(err, result) {
    if (err)
      throw err;
    console.log("update success!");
    db.detach();
  });
});

以上就是本文的全部内容,教会大家如何使用Node.js操作Firebird数据库,希望大家喜欢。

 类似资料:
  • 本文向大家介绍node.js如何操作MySQL数据库,包括了node.js如何操作MySQL数据库的使用技巧和注意事项,需要的朋友参考一下 MySQL数据库作为最流行的开源数据库。基本上是每个web开发者必须要掌握的数据库程序之一了。 基本使用 node.js上,最受欢迎的mysql包就是mysql模块。 然后在js脚本里面直接引用进来 配置mysql的数据库连接。 这样就拿到了一个连接。 然后就

  • 本文向大家介绍Node.js操作mysql数据库增删改查,包括了Node.js操作mysql数据库增删改查的使用技巧和注意事项,需要的朋友参考一下 关于node.js操作mysql数据库的相关介绍请阅读全文吧。下文介绍的非常详细,具体内容如下所示:  安装mysql模块 数据库准备 mysql server所在的机器IP地址是192.168.0.108,登录账户就用root@123456 在mys

  • 本文向大家介绍node.js操作mongoDB数据库示例分享,包括了node.js操作mongoDB数据库示例分享的使用技巧和注意事项,需要的朋友参考一下 连接数据库 插入数据: 插入数据后,在控制台中输出数据文档的内容 关闭数据库db.close([forceClose],[callback]); forceClose为true时,强制关闭该数据库,当数据库关闭后,不可再使用open开启数据库.

  • 数据操作教程 本章我们来了解一下sp框架的数据操作方法。 一、数据查找 findAll() 用法:findAll($conditions = array(), $sort = null, $fields = '*', $limit = null) 参数: $condition,数组形式,查找纪录的条件。有两种方式: 直接键对值的等于关系的AND条件,如array("cid"=>12, "score

  • 数据库的操作是每个phpweb框架的核心功能,我们提供数据库数据库的标准调用模式为: 你可以执行严格模式,也就是左边的那条线,Controller->Service->Dao->Model->DB,也可以走简单模式 Controller->Model->DB。个人根据自己的需求,走标准麻烦些(几乎所有的机构和系统都是这样^_^), 但是扩展性会好些,但是使用简单模式开发效率就会高些,性能会好些,但

  • 这一小节是对数据库操作做一个简单的封装,不涉及复杂的事务操作等。 我选用了Sql2o作为底层数据库框架作为支持,它的简洁易用性让我刮目相看,后面我们也会写如何实现一个ORM框架。 /** * 数据库支持 * @author biezhi * */ public final class MarioDb { private static Sql2o sql2o = null;