node.js连接postgresql 代码案例
时间: 2023-05-18 19:05:50 浏览: 144
以下是一个使用Node.js连接PostgreSQL的代码示例:
```javascript
const { Client } = require('pg');
const client = new Client({
user: 'username',
host: 'localhost',
database: 'database_name',
password: 'password',
port: 5432,
});
client.connect();
client.query('SELECT * FROM table_name', (err, res) => {
console.log(err ? err.stack : res.rows);
client.end();
});
```
请注意,您需要安装`pg`模块才能运行此代码。您可以使用以下命令安装它:
```
npm install pg
```
希望这可以帮助您开始使用Node.js连接PostgreSQL!
相关问题
node.js连接postgresql 使用连接池的代码案例
以下是一个示例,来使用Node.js连接到PostgreSQL数据库并使用连接池进行连接:
```javascript
const { Pool } = require('pg')
const pool = new Pool({
user: 'your_db_user',
host: 'localhost',
database: 'your_db_name',
password: 'your_db_password',
port: 5432, // or other port you're using for PostgreSQL
})
module.exports.query = (text, params, callback) => {
return pool.query(text, params, callback)
}
// Now you can use this pool to execute your queries
// Example usage:
const query = require('./path/to/above/code.js').query
query('SELECT * FROM your_table', (err, res) => {
console.log(err ? err.stack : res.rows)
})
```
这里我们使用pg模块的连接池创建了一个连接到PostgreSQL数据库。我们定义了一个使用连接池来执行查询的函数。函数接受三个参数 - SQL查询语句,参数对象(可选),和回调函数。在该函数内,我们可以使用连接池的`query()`方法来执行查询,并在执行查询后调用回调函数。
通过这种方式,我们可以轻松地在应用中使用连接池来管理PostgreSQL数据库连接。
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格式的用户数据。
阅读全文