Node.js - MySQL Sisipkan Data
Hai there, bakal bintang coding! Hari ini, kita akan mengemban perjalanan yang menarik ke dunia Node.js dan MySQL. Khususnya, kita akan fokus pada bagaimana menyisipkan data ke dalam database MySQL menggunakan Node.js. Jangan khawatir jika Anda baru saja memulai programming - saya akan menjadi panduan ramah Anda, menjelaskan setiap langkah secara detil. mari kita masuk ke dalamnya!
Apa Itu Node.js dan MySQL?
Sebelum kita mulai, mari kita mengerti singkat apa itu Node.js dan MySQL:
- Node.js: Itu adalah runtime JavaScript yang kuat yang memungkinkan Anda menjalankan JavaScript di komputer Anda, tidak hanya di browser web.
- MySQL: Itu adalah sistem database populer yang membantu menyimpan dan mengelola data.
Pertimbangkan Node.js sebagai chef dan MySQL sebagai lemari pendingin besar dan teratur. Kita akan menggunakan Node.js untuk menciptakan kode yang menyisipkan data ke lemari pendingin MySQL kita!
Menyiapkan Lingkungan Kerja
Pertama-tama, kita perlu menyiapkan dapur kita (aku bermaksud lingkungan pengembangan). Berikut adalah apa yang Anda butuhkan:
- Install Node.js dari situs resmi (nodejs.org)
- Install MySQL dari mysql.com
- Install modul MySQL untuk Node.js dengan menjalankan perintah ini di terminal Anda:
npm install mysql
Bagus! Sekarang kita memiliki semua bahan yang dibutuhkan. Mari kita mulai memasak... aku bermaksud, coding!
Sisipkan dengan Node.js
Membuat Koneksi
Sebelum kita dapat menyisipkan data, kita perlu terhubung ke database MySQL kita. Berikut cara untuk melakukannya:
const mysql = require('mysql');
const connection = mysql.createConnection({
host: 'localhost',
user: 'your_username',
password: 'your_password',
database: 'your_database_name'
});
connection.connect((err) => {
if (err) {
console.error('Error connecting to the database: ' + err.stack);
return;
}
console.log('Connected to database.');
});
mari kitauraikan ini:
- Kita memerlukan modul MySQL yang kita install sebelumnya.
- Kita membuat koneksi menggunakan
mysql.createConnection()
, menyediakan detil database kita. - Kita menggunakan
connection.connect()
untuk benar-benar terhubung ke database. - Jika ada kesalahan, kita log-kan. Jika tidak, kita konfirmasi bahwa kita terhubung.
Query INSERT Sederhana
Sekarang kita terhubung, mari kita sisipkan beberapa data! Bayangkan kita memiliki tabel users
dengan kolom id
, name
, dan email
. Berikut cara kita menambahkan pengguna baru:
const newUser = { name: 'John Doe', email: '[email protected]' };
connection.query('INSERT INTO users SET ?', newUser, (error, results) => {
if (error) throw error;
console.log('New user added with ID: ' + results.insertId);
});
Apa yang terjadi di sini?
- Kita menciptakan objek
newUser
dengan data yang kita ingin sisipkan. - Kita menggunakan
connection.query()
untuk mengirimkan query SQL ke database. - Tanda
?
di query adalah placeholder. MySQL menggantinya dengan objeknewUser
kita. - Jika berhasil, MySQL mengembalikan beberapa hasil, termasuk ID catatan baru.
Menyisipkan Beberapa Record
Apa bila kita ingin menambahkan beberapa pengguna sekaligus? Kita juga dapat melakukan itu!
const users = [
{ name: 'Alice', email: '[email protected]' },
{ name: 'Bob', email: '[email protected]' },
{ name: 'Charlie', email: '[email protected]' }
];
connection.query('INSERT INTO users (name, email) VALUES ?', [users.map(user => [user.name, user.email])], (error, results) => {
if (error) throw error;
console.log('Number of records inserted: ' + results.affectedRows);
});
Apa yang baru di sini:
- Kita menciptakan array objek pengguna.
- Kita menggunakan
users.map()
untuk transformasi array kita ke format yang MySQL harapkan. - Placeholder
?
sekarang mewakili beberapa set nilai. -
results.affectedRows
memberitahu kita berapa banyak record yang disisipkan.
INSERT dengan Statement Siap
Sekarang, mari kita tingkatkan permainan kita dengan statement siap. Ini seperti resep yang kita dapat gunakan berulang-ulang, hanya mengubah bahan (data) setiap kali.
const sql = "INSERT INTO users (name, email) VALUES (?, ?)";
const values = ['David', '[email protected]'];
connection.query(sql, values, (error, results) => {
if (error) throw error;
console.log('New user added with ID: ' + results.insertId);
});
Apa yang istimewa di sini?
- Kita memisahkan query SQL dan data kita.
- Tanda
?
di SQL mewakili di mana data kita akan masuk. - Kita kirimkan array
values
sebagai argumen terpisah kequery()
.
Metode ini lebih aman dan dapat melindungi dari serangan SQL injection. Itu seperti menggunakan resep terpercaya daripada hanya mencampur bahan-bahan bersama!
Menggunakan Statement Siap Berulang
Kekuatan sebenarnya statement siap bersinar saat kita menggunakannya berkali-kali:
const sql = "INSERT INTO users (name, email) VALUES (?, ?)";
const users = [
['Eva', '[email protected]'],
['Frank', '[email protected]'],
['Grace', '[email protected]']
];
users.forEach(user => {
connection.query(sql, user, (error, results) => {
if (error) throw error;
console.log('New user added with ID: ' + results.insertId);
});
});
Di sini, kita menggunakan sama SQL "resep" untuk setiap pengguna, hanya mengubah "bahan" (values) setiap kali.
Menutup Koneksi
Jangan lupa untuk menutup dapur Anda saat Anda selesai memasak! aku bermaksud, tutup koneksi database saat Anda selesai melakukan query:
connection.end((err) => {
if (err) {
console.error('Error closing the database connection: ' + err.stack);
return;
}
console.log('Database connection closed.');
});
Ini memastikan kita tidak meninggalkan koneksi terbuka, yang bisa memperlambat aplikasi kita atau server database.
Ringkasan Metode
Berikut adalah tabel ringkasan metode yang kita belajar:
Metode | Deskripsi |
---|---|
mysql.createConnection() |
Membuat koneksi ke database MySQL |
connection.connect() |
Menetapkan koneksi database |
connection.query() |
Menjalankan query SQL |
connection.end() |
Menutup koneksi database |
Kesimpulan
Selamat! Anda baru saja belajar bagaimana menyisipkan data ke database MySQL menggunakan Node.js. Kita telah meliputi insert sederhana, beberapa insert, dan bahkan statement siap. Ingat, latihan membuat sempurna, jadi jangan khawatir untuk mencoba konsep ini.
Dalam tahun-tahun pengajaran saya, saya menemukan bahwa cara terbaik untuk belajar adalah dengan melakukan. Jadi, mengapa tidak menciptakan proyek kecil? Mungkin aplikasi sederhana yang menyimpan resep favorit Anda di database? Dengan cara itu, Anda dapat mempraktikkan keterampilan baru Anda dan menjaga rahasia kue Nenek Anda tetap aman!
Selamat coding, dan semoga database Anda selalu normal!
Credits: Image by storyset