node.js连接postgresql 完整代码案例
时间: 2023-05-28 16:01:49 浏览: 315
Node.js连接postgreSQL并进行数据操作
以下是使用Node.js连接PostgreSQL数据库的完整代码示例:
首先,我们需要安装pg模块,这是一个Node.js连接PostgreSQL数据库的模块。可以使用npm来安装它:
```
npm install pg --save
```
接下来,我们创建一个db.js文件用于连接数据库:
```
const pg = require('pg');
const config = {
user: 'your_username',
database: 'your_database_name',
password: 'your_password',
port: 5432, // 默认端口
max: 10, // 连接池最大连接数
idleTimeoutMillis: 30000, // 连接闲置超时时间(毫秒)
}
const pool = new pg.Pool(config);
module.exports = {
query: (text, params, callback) => {
return pool.query(text, params, callback);
}
};
```
在这个文件中,我们使用pg模块创建了一个连接池,并将其导出为一个可以被其他文件调用的模块。
现在我们可以在其他文件中使用这个模块来执行PostgreSQL查询。 例如,我们可以创建一个server.js文件来启动一个简单的Web服务器,并在其中执行一些查询:
```
const http = require('http');
const db = require('./db');
const server = http.createServer((req, res) => {
db.query('SELECT * FROM users', [], (err, result) => {
if (err) {
res.writeHead(500, {'Content-Type': 'text/plain'});
res.end('Error connecting to database: ' + err);
} else {
res.writeHead(200, {'Content-Type': 'application/json'});
res.end(JSON.stringify(result.rows));
}
});
});
server.listen(3000, () => {
console.log('Server running on port 3000');
});
```
在这个示例中,我们创建了一个HTTP服务器,在收到客户端请求时,向数据库查询所有用户的数据,并将结果以JSON格式返回给客户端。注意,我们调用了db模块的query方法来执行查询,并将结果作为回调函数的参数传递。
现在可以在命令行中运行这个服务器:
```
node server.js
```
然后,可以在浏览器中访问http://localhost:3000,从而得到一些JSON格式的用户数据。
阅读全文