Home  >  Article  >  Database  >  Node.js访问PostgresQL数据库

Node.js访问PostgresQL数据库

WBOY
WBOYOriginal
2016-06-07 17:26:081064browse

Node.js访问PostgresQL数据库,安装PostgresQL模块:进入到/usr/local/lib:发现有一个node_schedules目录,里面放的是你安装的模

1)安装PostgresQL模块:
  进入到/usr/local/lib:发现有一个node_schedules目录,里面放的是你安装的模块
 
  npm install -g node_gyp
  export $PATH=$PATH:/usr/local/pgsql/bin/
  npm install pg              //-g 表示全局

2)连接数据库并访问
  连接字符串=“tcp:// 用户名 : 密码 @localhost:5432/ 库名”;

  1) 事件形式:
    var pg = require('pg');
    var MATH = require('math');
    var constring = "tcp://postgres:1234@localhost/my";

    var client = new pg.Client(constring);
    client.connect();

    client.query("create temp table beatle(name varchar(10),height integer)");
    client.query("insert into beatle(name,height) values('john',50)");
    client.query("insert into beatle(name,height) values($1,$2)",['brown',68]);
    var query = client.query("select * from beatle");

    query.on('row',function(row){
    console.log(row);
    console.log("Beatle name:%s",row.name);
    console.log("beatle height:%d' %d\"",MATH.floor(row.height/12),row.height%12);
    });

    query.on('end',function(){
    client.end();
    });
   
    测试成功,输出内容为:
      { name: 'john', height: 50 }
      Beatle name:john
      beatle height:4' 2"
      { name: 'brown', height: 68 }
      Beatle name:brown
      beatle height:5' 8"
 
    2)回调函数形式:
      var pg = require('pg');

      var conString = "tcp://postgres:1234@localhost/my";

      var client = new pg.Client(conString);
      client.connect(function(err) {
    client.query('SELECT NOW() AS "theTime"', function(err, result) {
      console.log(result.rows[0].theTime);
          client.end();
    })
      });

    测试成功,输出结果为:
      Wed Jan 23 2013 14:30:12 GMT+0800 (CST)
   
    3) 用回调方式实现上面的事件形式:
      var pg = require('pg');
      var MATH = require('math');
      var constring = "tcp://postgres:1234@localhost/my";

      var client = new pg.Client(constring);

      client.connect(function(err){
      client.query("create temp table beatle(name varchar(10),height integer)");
      client.query("insert into beatle(name,height) values('john',50)");
      client.query("insert into beatle(name,height) values($1,$2)",['brown',68]);
      client.query("select * from beatle ",function(err,result){
          console.log(result);
          for(var i=0;i          {
          console.log(result.rows[i]);
          console.log("Beatle name:%s",result.rows[0].name);
          console.log("beatle height:%d' %d\"",MATH.floor(result.rows[0].height/12),result.rows[0].height%12);
          }
          client.end();
      });
      });
     
      测试成功,,输出结果为:
      { command: 'SELECT',
    rowCount: 2,
    oid: NaN,
    rows: [ { name: 'john', height: 50 }, { name: 'brown', height: 68 } ] }
      { name: 'john', height: 50 }
      Beatle name:john
      beatle height:4' 2"
      { name: 'brown', height: 68 }
      Beatle name:john

      beatle height:4' 2"

更多关于Node.js的详细信息,或者下载地址请点这里

linux

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn