Blogger Jateng

Menghubungkan ke Basis Data SQL di Node.js

Beberapa aplikasi yang membutuhkan database SQL untuk mengelola dan menyimpan datanya adalah sebagai berikut: Node.js, salah satu runtime JavaScript yang paling banyak digunakan, hadir untuk membantu para pengembang agar dapat dengan mudah terhubung ke basis data SQL dan melakukan operasi seperti melakukan kueri, memperbarui, dan menghapus catatan. Pada artikel ini, kita akan melihat cara menyambung ke database SQL di Node.js dan cara berkomunikasi dengannya secara efektif.

Prasyarat

Sebelum memulai proses, pastikan Anda memiliki:

  1. Cek Node.js: Unduh node dan instal node.js dari situs web resmi.
  2. Basis data SQL: Siapkan database SQL (misalnya MySQL, PostgreSQL, atau SQLite). Anda dapat mencoba AWS RDS untuk layanan atau XAMPP untuk alat lokal.
  3. Kredensial Basis Data: Anda sebaiknya memiliki detail seperti host, nama pengguna, kata sandi, dan nama basis data yang tersedia.
  4. Pengetahuan tentang JavaScript: Mengetahui dasar-dasar JavaScript akan membantu Anda mengikuti.
sumber: medium.com

Langkah 1: Membuat Proyek

Pertama, buatlah proyek Node.js baru:

mkdir node-sql-demo

cd node-sql-demo

npm init -y

Ini akan menyiapkan proyek baru dan membuat berkas package.json.

Langkah 2: Instal Paket yang Diperlukan

Node.js bergantung pada pustaka-pustaka khusus DB. Kita dapat menginstal pustaka untuk beberapa database umum:

  • MySQL: mysql2
  • PostgreSQL: pg
  • SQLite: sqlite3

Sebagai contoh, jika Anda menggunakan MySQL jalankan:

npm install mysql2

Anda mungkin juga ingin menginstal dotenv untuk manajemen variabel lingkungan:

npm install dotenv

Langkah 3: Konfigurasi Variabel Lingkungan

Catatan: Informasi sensitif seperti kredensial basis data harus disimpan dalam file . env:

DB_HOST=localhost

DB_USER=root

DB_PASSWORD=password

DB_NAME=my_database

Di dalam kode Anda, gunakan dotenv untuk memuat variabel-variabel ini:

require('dotenv').config();

Langkah 4: Membuat koneksi ke basis data

Buat berkas baru, db. js, yang menangani koneksi basis data:

Contoh untuk MySQL:

const mysql = require('mysql2');


const connection = mysql.createConnection({

  host: process.env.DB_HOST,

  user: process.env.DB_USER,

  password: process.env.DB_PASSWORD,

  database: process.env.DB_NAME

});


connection.connect((err) => {

  if (err) {

    console.error('Error connecting to the database:', err);

    return;

  }

  console.log('Connected to the MySQL database!');

});


module.exports = connection;

Contoh untuk PostgreSQL:  

 const { Client } = require('pg');


const client = new Client({

  host: process.env.DB_HOST,

  user: process.env.DB_USER,

  password: process.env.DB_PASSWORD,

  database: process.env.DB_NAME

});


client.connect((err) => {

  if (err) {

    console.error('Error connecting to the PostgreSQL database:', err);

    return;

  }

  console.log('Connected to the PostgreSQL database!');

});


module.exports = client;

Langkah 5: Menulis Perintah SQL

Setelah koneksi dibuat, Anda dapat membuat kueri SQL. Misalnya, untuk mengambil data:

Contoh Kueri di MySQL:

const connection = require('./db');


connection.query('SELECT * FROM users', (err, results) => {

  if (err) {

    console.error('Error executing query:', err);

    return;

  }

  console.log('Query results:', results);

});

Contoh Kueri di PostgreSQL:

const client = require('./db');


client.query('SELECT * FROM users', (err, res) => {

  if (err) {

    console.error('Error executing query:', err);

    return;

  }

  console.log('Query results:', res.rows);

});

Langkah 6: Menutup koneksi

Selalu akhiri koneksi ketika selesai:

Untuk MySQL:

connection.end((err) => {

  if (err) {

    console.error('Error closing the connection:', err);

    return;

  }

  console.log('Connection closed.');

});

Untuk PostgreSQL:  

client.end((err) => {

  if (err) {

    console.error('Error closing the connection:', err);

    return;

  }

  console.log('Connection closed.');

});

Kesimpulan

Menghubungkan ke database SQL di Node.js sangat mudah dengan pustaka yang tepat. Dengan mengikuti langkah-langkah yang diuraikan di atas, Anda dapat membuat koneksi yang aman dan efisien ke basis data SQL Anda. Baik Anda menggunakan MySQL, PostgreSQL, atau SQLite, Node.js menyediakan fleksibilitas untuk mengelola operasi database Anda secara efektif. Seiring dengan bertambahnya pengalaman Anda, jelajahi fitur-fitur canggih seperti penyatuan koneksi dan pembuat kueri seperti Sequelize atau Knex.js untuk lebih meningkatkan aplikasi Anda.

Kembali ke>>>> Mengintegrasikan Basis Data SQL dengan Node.js