一、下载Node.js postgres驱动
Node.js里面没有postgres模块的,我们需要安装node-postgres模块。 node-postgres模块的下载地址为:https://github.com/brianc/node-postgres。下载完成后,解压到pg目录,pg里面的文件目录结构如下图所示:
二、编写连接js代码
1、在D盘新建文本文件重命名为,test-postgres.js。内容如下:
1 var pg = require(‘./pg‘); //加载模块 2 var conString = "postgres://postgres:postgres@localhost:5432/node-test";//此时数据库必须已经创建 3 //anything://user:password@host:port/database 4 var client = new pg.Client(conString); 5 6 client.connect(function(err) { 7 if(err) { 8 return console.error(‘could not connect to postgres‘, err); 9 } 10 11 //删除存在表 12 console.log("Dropping table ‘person‘") 13 var query = client.query("drop table if exists person"); 14 query.on(‘end‘, function() { 15 console.log("Dropped!"); 16 }); 17 18 //创建表 19 console.log("Creating table ‘person‘"); 20 query = client.query("create table person(id serial, username varchar(10), password varchar(10), age integer)"); 21 query.on(‘end‘, function(){ 22 console.log("Created!"); 23 }); 24 25 //添加 26 client.query(‘INSERT INTO person(username, password, age) VALUES($1, $2, $3)‘, ["zhangsan", "123456", 20], function(err, result) { 27 console.log( "====================add========================"); 28 if(err) { 29 console.log(err); 30 return rollback(client); 31 } 32 console.log( result); 33 }); 34 35 36 //查询 37 client.query(‘select username, password, age from person where id = $1‘, [3], function(err, result) { 38 console.log( "===================query========================="); 39 if(err) { 40 console.log(err); 41 } 42 console.log(result.rows[0]); 43 }); 44 45 //更新 46 client.query(‘update person set password=$1 where id = $2‘, ["11a",1], function(err, result) { 47 console.log( "=====================update======================="); 48 if(err) { 49 console.log(err); 50 } 51 console.log(result); 52 }); 53 54 //删除 55 client.query(‘delete from person where id = $1‘, [1], function(err, result) { 56 console.log( "====================remove======================="); 57 if(err) { 58 console.log(err); 59 } 60 console.log(result); 61 client.end(); 62 }); 63 64 }); 65 66 var rollback = function(client) { 67 client.query(‘ROLLBACK‘, function() { 68 client.end(); 69 }); 70 };
2、将pg目录拷贝至test-postgres.js文件相同目录下,cmd进入D盘 运行命令 node testmysql.js 回车即可运行。