Buka 2026 dengan Skill Baru
Diskon 25% untuk Semua Kelas di ITBOX
Periode 4-10 Desember 2025
Hari
Jam
Menit
Detik
SKILLBOX
Periode promo 17-24 Oktober 2025

Tutorial Install Sequelize ORM di Node.js & Express REST API

December 2, 2024

Jika Sobat Digital sedang membangun aplikasi dengan Node.js dan mencari cara untuk mengelola database dengan lebih mudah, Sequelize bisa jadi solusinya.

Bayangkan, dengan sedikit kode, kamu bisa mengelola database secara efisien, mendefinisikan relasi antar-tabel, dan menangani data dengan fleksibel, itulah kehebatan sequelize.

Mari simak lebih lanjut dan pelajari cara menggunakan sequelize untuk mengoptimalkan pengembangan aplikasimu.

Memulai Project Node.js: Instalasi dan Setup Awal

Panduan langkah demi langkah untuk membantu kamu memulai proyek Node.js, yaitu:

1. Instalasi Node.js dan npm

Kunjungi nodejs.org dan unduh versi terbaru dari Node.js sesuai dengan sistem operasi, yaitu Windows, macOS, atau Linux. Instalasi Node.js juga akan menginstal npm (Node Package Manager) secara otomatis.

Setelah instalasi selesai, buka terminal atau command prompt dan jalankan perintah berikut untuk memastikan Node.js dan npm terinstal dengan benar:node -v npm -v

2. Membuat Proyek Baru

Langkah berikutnya buat folder baru untuk proyekmu: mkdir my-node-project cd my-node-project

Lalu jalankan perintah berikut untuk membuat file package.json, yang menyimpan informasi tentang proyek dan dependensi yang diperlukan.

npm init -y

Perintah ini akan membuat file package.json dengan pengaturan default.

3. Instalasi Express.js

Express adalah framework web yang populer untuk Node.js. Instal Express dengan menjalankan perintah berikut:

npm install express

4. Membuat File Server

Langkah keempat buat file baru bernama server.js atau app.js di dalam direktori proyek kamu.

Buka file tersebut dengan editor teks pilihan kamu (seperti Visual Studio Code) dan tambahkan kode berikut untuk membuat server dasar:

const express = require(‘express’); const app = express(); const port = 3000; app.get(‘/’, (req, res) => { res.send(‘Hello World!’); }); app.listen(port, () => { console.log(`Server running at http://localhost:${port}`); });

5. Menjalankan Server

Terakhir, kembali ke terminal dan jalankan server dengan perintah:

node server.js

Lalu buka browser dan navigasikan ke http://localhost:3000. Jika semuanya berjalan dengan baik, kamu akan melihat pesan “Hello World!”.

Baca Juga: Node JS Adalah: Pengertian, Cara Kerja, Kelebihan dan Contoh Penggunaannya

Instalasi Sequelize ORM dan Koneksi ke MySQL di Node.js

Panduan instalasi Sequelize ORM dan cara menghubungkannya ke database MySQL adalah sebagai berikut:

1. Persiapan Awal dan Buat Proyek Node.js Baru

Sebelum memulai, pastikan kamu sudah menginstal Node.js dan MySQL di sistem. Juga, pastikan MySQL server berjalan.

Buat direktori proyek melalui kode berikut:

mkdir my-sequelize-project cd my-sequelize-project

Kemudian inisialisasi proyek:

npm init -y

3. Instalasi Dependensi

Langkah berikutnya Instal Sequelize dan driver MySQL yang diperlukan menggunakan npm:

npm install sequelize mysql2

4. Konfigurasi Koneksi Database

Buat folder bernama ‘config’ dan di dalamnya buat file database.config.js.module.exports = { HOST: “localhost”, USER: “root”, // Ganti dengan username MySQL Anda PASSWORD: “your_password”, // Ganti dengan password MySQL Anda DB: “your_database_name”, // Ganti dengan nama database Anda DIALECT: “mysql”, };

Selanjutnya buat folder bernama ‘database’ dan di dalamnya buat file index.js

const { Sequelize } = require(“sequelize”); const { DB, USER, PASSWORD, HOST, DIALECT } = require(“../config/database.config”); const sequelize = new Sequelize(DB, USER, PASSWORD, { host: HOST, dialect: DIALECT, }); module.exports = sequelize;

5. Menguji Koneksi

Buat file app.js di direktori proyek kamu untuk menguji koneksi ke database:

const sequelize = require(“./database/index”); sequelize.authenticate() .then(() => { console.log(‘Connection has been established successfully.’); }) .catch(err => { console.error(‘Unable to connect to the database:’, err); });

6. Menjalankan Aplikasi

Langkah selanjutnya jalankan aplikasi dengan perintah berikut:

node app.js

Jika koneksi berhasil, kamu akan melihat pesan “Connection has been established successfully.”

7. Membuat Model

Buat folder bernama models dan di dalamnya buat file book.model.js:

const { DataTypes } = require(“sequelize”); const sequelize = require(“../database/index”); const Book = sequelize.define(“Book”, { title: { type: DataTypes.STRING, allowNull: false, }, author: { type: DataTypes.STRING, allowNull: false, }, release_date: { type: DataTypes.DATE, allowNull: false, }, }); module.exports = Book;

8. Sinkronisasi Model dengan Database

Di dalam file app.js, tambahkan kode berikut untuk menyinkronkan model dengan database:

const Book = require(“./models/book.model”); sequelize.sync({ force: true }) .then(() => { console.log(“Database & tables created!”); }) .catch(err => { console.error(‘Unable to create table:’, err); });

9. Menjalankan Kembali Aplikasi

Terakhir, jalankan kembali aplikasi dengan perintah berikut:

node app.js

Kamu akan melihat pesan “Database & tables created!” jika tabel telah berhasil dibuat.

Membuat CRUD dengan Sequelize dan Express JS

Panduan untuk membuat CRUD (Create, Read, Update, Delete) API menggunakan Express dan Sequelize dengan database MySQL, yaitu:

1. Persiapan Proyek

Pastikan kamu telah menginstal Node.js. Jika belum, kamu dapat mengunduhnya dari nodejs.org. Kemudian buat direktori baru dan inisialisasi proyek Node.js:

mkdir my-crud-api cd my-crud-api npm init -y

2. Instalasi Dependensi

Instal Express, Sequelize, MySQL2, dan Nodemon:

npm install express sequelize mysql2 npm install –save-dev nodemon

3. Konfigurasi Database

Buat folder config dan di dalamnya buat file db.config.js:

module.exports = { HOST: “localhost”, USER: “root”, // Ganti dengan username MySQL Anda PASSWORD: “your_password”, // Ganti dengan password MySQL Anda DB: “your_database_name”, // Ganti dengan nama database Anda DIALECT: “mysql”, };

4. Membuat Koneksi Sequelize

Buat folder database dan di dalamnya buat file index.js:

module.exports = { HOST: “localhost”, USER: “root”, // Ganti dengan username MySQL Anda PASSWORD: “your_password”, // Ganti dengan password MySQL Anda DB: “your_database_name”, // Ganti dengan nama database Anda DIALECT: “mysql”, };

5. Membuat Model

Buat folder models dan di dalamnya buat file book.model.js:

const { DataTypes } = require(“sequelize”); const sequelize = require(“../database/index”); const Book = sequelize.define(“Book”, { title: { type: DataTypes.STRING, allowNull: false, }, author: { type: DataTypes.STRING, allowNull: false, }, summary: { type: DataTypes.TEXT, allowNull: false, }, }); module.exports = Book;

6. Membuat Controller

Buat folder controllers dan di dalamnya buat file book.controller.js:const Book = require(“../models/book.model”); exports.create = async (req, res) => { try { const book = await Book.create(req.body); res.status(201).json({ message: “Book created”, data: book }); } catch (error) { res.status(500).json({ message: error.message }); } }; exports.findAll = async (req, res) => { try { const books = await Book.findAll(); res.status(200).json(books); } catch (error) { res.status(500).json({ message: error.message }); } }; exports.findOne = async (req, res) => { try { const book = await Book.findByPk(req.params.id); if (book) { res.status(200).json(book); } else { res.status(404).json({ message: “Book not found” }); } } catch (error) { res.status(500).json({ message: error.message }); } }; exports.update = async (req, res) => { try { const [updated] = await Book.update(req.body, { where: { id: req.params.id } }); if (updated) { const updatedBook = await Book.findByPk(req.params.id); res.status(200).json({ message: “Book updated”, data: updatedBook }); } else { res.status(404).json({ message: “Book not found” }); } } catch (error) { res.status(500).json({ message: error.message }); } }; exports.delete = async (req, res) => { try { const deleted = await Book.destroy({ where: { id: req.params.id } }); if (deleted) { res.status(204).send(); } else { res.status(404).json({ message: “Book not found” }); } } catch (error) { res.status(500).json({ message: error.message }); } };

7. Membuat Rute

Buat folder routes dan di dalamnya buat file book.routes.js:

const express = require(“express”); const bookController = require(“../controllers/book.controller”); const router = express.Router(); router.post(“/”, bookController.create); router.get(“/”, bookController.findAll); router.get(“/:id”, bookController.findOne); router.put(“/:id”, bookController.update); router.delete(“/:id”, bookController.delete); module.exports = router;

8. Mengatur Server Express

Buat file app.js di direktori proyek kamu:

const express = require(“express”); const cors = require(“cors”); const db = require(“./database/index”); const bookRoutes = require(“./routes/book.routes”); const app = express(); const port = 3000; app.use(cors()); app.use(express.json()); app.use(“/api/books”, bookRoutes); db.sync().then(() => { console.log(“Database synced”); }).catch(err => console.error(“Failed to sync database:”, err)); app.listen(port, () => console.log(`Server running at http://localhost:${port}`));

9. Menjalankan Aplikasi

Jalankan aplikasi menggunakan Nodemon untuk pengembangan:

npx nodemon app.js

Sekarang kamu dapat mengakses API CRUD di endpoint http://localhost:3000/api/books.

10. Menguji API

Pakai Postman atau alat serupa untuk menguji API dengan melakukan operasi CRUD:

  • POST /api/books: Untuk menambahkan buku baru.
  • GET /api/books: Untuk mendapatkan semua buku.
  • GET /api/books/:id: Untuk mendapatkan buku berdasarkan ID.
  • PUT /api/books/:id: Untuk memperbarui buku berdasarkan ID.
  • DELETE /api/books/:id: Untuk menghapus buku berdasarkan ID.

Dengan langkah-langkah ini, kamu telah berhasil membuat CRUD API menggunakan Express dan Sequelize dengan database MySQL.

Baca Juga: CRUD Adalah : Fungsi & Pentingnya Menggunakan CRUD

Raih Keunggulan Kompetitif dengan Kursus ITBOX

Dengan mempelajari Sequelize, kamu tidak hanya akan meningkatkan efisiensi dalam pengelolaan database, tetapi juga memperkuat pondasi pengembangan aplikasi secara keseluruhan. 

Jika kamu ingin memperdalam pengetahuan dan keterampilan lebih lanjut, kami sangat merekomendasikan untuk mengikuti Kursus Online Database di ITBOX.

Kursus ini menawarkan berbagai keuntungan menarik, termasuk materi yang komprehensif, akses seumur hidup ke video pembelajaran, dan fleksibilitas belajar sesuai dengan waktu kamu.

Mulailah perjalanan kamu di bidang database sekarang, dan optimalkan keterampilan di dunia pengembangan aplikasi bersama ITBOX!

Share Artikel
Shopping cart0
There are no products in the cart!
Continue shopping
0

Level

Course Level

Category

Skill