使用nodejs操作postgresql

环境准备

1 navicat premium
2 postgresql 14

装完上述软件后,远程连接上之后如下:
在这里插入图片描述
自己建立一个用户表users,然后随机生成一些数据即可

步骤

这里我将项目放到了gticode里,可以下载下来使用
https://gitcode.net/wangbiao9292/nodejs-postgresql/-/tree/master

在这里插入图片描述
这里几个文件解释下:
1 node_modules 依赖
2 package-lock.json 锁定的版本
3 package.json 配置
4 pgsql.js postgresql用来连接数据库的配置
5 server.js 依赖express的配置

下面贴一下代码:
pgsql.js

var pg = require("pg");
class pgsql {
    
    
    pool;
    constructor() {
    
    
        this.pool = new pg.Pool({
    
    
            database: "demo", //数据库名称
            user: "postgres", //用户名
            password: "root", //密码
            port: 5432, //端口号
            // 扩展属性
            max: 20, // 连接池最大连接数
            idleTimeoutMillis: 3000 // 连接最大空闲时间 3s
        })
    }
    //查询数据
    searchData(sqlString,callback){
    
    
        this.pool.connect((err,client,done)=>{
    
    
            client.query(sqlString,(err,result)=>{
    
    
                console.log(result)
            })
        })
    }
}
module.exports = pgsql

server.js

const pgsql = require("./pgsql")
const express = require('express');
const app = express();
const port = 5422;

app.listen(port, () => console.log(`listening on http://localhost:${
      
      port}`));
 

/**
 * 根路径访问
 */
app.get("/",(req,res)=>{
    
    
    res.send("hello world")
})

/**
 * 获取用户表信息
 */
app.get("/user",(req,res)=>{
    
    
    var sqlString = "select * from users";
    var s = new pgsql();
    s.pool.connect((err,client,done)=>{
    
    
        client.query(sqlString,(err,result)=>{
    
    
            done();
            console.log(result.rows)
            res.send(result)
        })
    })
    
})

然后运行npm start
在这里插入图片描述
就可以通过接口取值了:
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/wangbiao9292/article/details/131424104