Apa Itu Sequelize?
Sequelize adalah ORM (Object-Relational Mapping) untuk Node.js yang memungkinkan kita berinteraksi dengan database SQL seperti MySQL, PostgreSQL, SQLite, dan MSSQL menggunakan JavaScript. Dengan Sequelize, kamu bisa membuat, membaca, memperbarui, dan menghapus data (CRUD) tanpa harus menulis query SQL manual yang bikin pusing.
"Dengan Sequelize, hidupmu jadi lebih mudah, seperti pakai cheat code di game! "
Kenapa Harus Pakai Sequelize?
Lebih Mudah Dibanding SQL Manual
Tidak perlu nulis SELECT * FROM users WHERE age > 20
, cukup pakai Sequelize dan semuanya jadi lebih ringkas!
Cross-Database Compatibility
Bisa dipakai untuk berbagai database SQL tanpa perlu ubah banyak kode.
Dukungan Migration dan Seeding
Bisa bikin struktur database tanpa harus bikin tabel manual.
Built-in Validation & Hooks
Bisa memvalidasi data sebelum masuk database dan menjalankan fungsi tertentu sebelum/ sesudah operasi database dilakukan.
Cara Install Sequelize di Node.js
Sebelum bisa pakai Sequelize, pastikan kamu sudah punya Node.js dan database (MySQL, PostgreSQL, SQLite, dll.) yang siap dipakai.
npm install sequelize sequelize-cli mysql2
Jika pakai PostgreSQL, ganti mysql2
dengan pg pg-hstore
. Jika pakai SQLite, ganti dengan sqlite3
.
Setup Sequelize
Kamu bisa menggunakan Sequelize dengan CommonJS (CJS) atau ECMAScript Module (ESM). Pilih yang sesuai dengan proyekmu!
Setup Sequelize dengan CommonJS (CJS)
const { Sequelize } = require("sequelize");
const sequelize = new Sequelize("database_name", "username", "password", {
host: "localhost",
dialect: "mysql", // Bisa diganti dengan 'postgres', 'sqlite', atau 'mssql'
});
sequelize
.authenticate()
.then(() => console.log("Database connected!"))
.catch((err) => console.error("Connection failed!", err));
Setup Sequelize dengan ECMAScript Module (ESM)
import { Sequelize } from "sequelize";
const sequelize = new Sequelize("database_name", "username", "password", {
host: "localhost",
dialect: "mysql", // Bisa diganti dengan 'postgres', 'sqlite', atau 'mssql'
});
try {
await sequelize.authenticate();
console.log("Database connected!");
} catch (err) {
console.error("Connection failed!", err);
}
"Kalau koneksi gagal, coba cek ulang username, password, dan pastikan database-nya nyala!"
Membuat Model Sequelize
Model adalah representasi tabel di database. Contohnya, kita buat model User
dengan kolom name
, email
, dan age
.
Model dengan CommonJS (CJS)
const { DataTypes } = require("sequelize");
const sequelize = require("./database");
const User = sequelize.define("User", {
name: {
type: DataTypes.STRING,
allowNull: false,
},
email: {
type: DataTypes.STRING,
unique: true,
allowNull: false,
validate: {
isEmail: true,
},
},
age: {
type: DataTypes.INTEGER,
allowNull: false,
},
});
module.exports = User;
Model dengan ECMAScript Module (ESM)
import { DataTypes } from "sequelize";
import sequelize from "./database.js";
const User = sequelize.define("User", {
name: {
type: DataTypes.STRING,
allowNull: false,
},
email: {
type: DataTypes.STRING,
unique: true,
allowNull: false,
validate: {
isEmail: true,
},
},
age: {
type: DataTypes.INTEGER,
allowNull: false,
},
});
export default User;
CRUD dengan Sequelize
CRUD bisa dilakukan baik dengan CJS maupun ESM dengan cara yang sama.
Kesimpulan
Sequelize adalah pilihan terbaik untuk mengelola database dengan Node.js karena mudah digunakan, mendukung banyak database, dan punya fitur lengkap. Dengan ORM ini, kamu bisa menulis kode lebih rapi, cepat, dan efisien.
"Jadi, tunggu apa lagi? Yuk pakai Sequelize dan buat aplikasi Node.js-mu makin powerfull!
Jangan lupa share artikel ini kalau bermanfaat!
0 Comments