一、下载Node.js postgres驱动
Node.js里面没有postgres模块的,我们需要安装node-postgres模块。 node-postgres模块的下载地址为:https://github.com/brianc/node-postgres。下载完成后,解压到pg目录,pg里面的文件目录结构如下图所示:
二、编写js代码
1、在D盘新建文本文件重命名为,test-postgres.js。内容如下:
var pg = require('./pg'); //加载模块node-postgres,该模块要与本文件放于同一个目录下 var conString = postgres://postgres:postgres@localhost:5432/node-test;//此时数据库必须已经创建 //anything://user:password@host:port/database var client = new pg.Client(conString); client.connect(function(err) { if(err) { return console.error('could not connect to postgres', err); } //删除存在表 console.log(Dropping table 'person') var query = client.query(drop table if exists person); query.on('end', function() { console.log(Dropped!); }); //创建表 console.log(Creating table 'person'); query = client.query(create table person(id serial, username varchar(10), password varchar(10), age integer)); query.on('end', function(){ console.log(Created!); }); //添加 client.query('INSERT INTO person(username, password, age) VALUES($1, $2, $3)', [zhangsan, 123456, 20], function(err, result) { console.log( ====================add========================); if(err) { console.log(err); return rollback(client); } console.log( result); }); //查询 client.query('select username, password, age from person where id = $1', [3], function(err, result) { console.log( ===================query=========================); if(err) { console.log(err); } console.log(result.rows[0]); }); //更新 client.query('update person set password=$1 where id = $2', [11a,1], function(err, result) { console.log( =====================update=======================); if(err) { console.log(err); } console.log(result); }); //删除 client.query('delete from person where id = $1', [1], function(err, result) { console.log( ====================remove=======================); if(err) { console.log(err); } console.log(result); client.end(); }); }); var rollback = function(client) { client.query('ROLLBACK', function() { client.end(); }); };
2、将pg目录拷贝至test-postgres.js文件相同目录下,cmd进入D盘 运行命令 node testmysql.js 回车即可运行。
原文地址:https://www.cnblogs.com/always-online
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。