PostgreSQL (или Postgres) — популярная система управления реляционными базами данных с открытым исходным кодом, используемая разработчиками по всему миру. В этой статье блога мы рассмотрим различные методы и примеры кода для работы с провайдером Postgres в ваших приложениях. Итак, приступим!
Методы работы с провайдером Postgres:
- Подключение к базе данных:
Чтобы установить соединение с базой данных PostgreSQL, вы можете использовать модульpgв Node.js. Вот пример:
const { Client } = require('pg');
const client = new Client({
user: 'your_username',
host: 'your_host',
database: 'your_database',
password: 'your_password',
port: 'your_port',
});
client.connect();
- Выполнение запросов.
После подключения вы можете выполнять SQL-запросы с помощью методаquery. Вот пример:
client.query('SELECT * FROM users', (err, res) => {
if (err) throw err;
console.log(res.rows);
});
- Параметризованные запросы.
Чтобы предотвратить атаки SQL-инъекций и повысить производительность, вы можете использовать параметризованные запросы. Вот пример:
const username = 'John';
const age = 25;
client.query('SELECT * FROM users WHERE username = $1 AND age = $2', [username, age], (err, res) => {
if (err) throw err;
console.log(res.rows);
});
- Обработка ошибок.
Чтобы корректно обрабатывать ошибки, вы можете использовать блоки try-catch. Вот пример:
try {
const res = await client.query('SELECT * FROM non_existent_table');
console.log(res.rows);
} catch (err) {
console.error('Error executing query:', err);
}
- Транзакции.
Postgres поддерживает транзакции для обеспечения целостности данных. Вот пример:
const queryText = 'INSERT INTO users (username) VALUES ($1)';
const values = ['Alice'];
try {
await client.query('BEGIN');
await client.query(queryText, values);
await client.query('COMMIT');
} catch (err) {
await client.query('ROLLBACK');
console.error('Transaction aborted:', err);
}