Initekno.com – Materi yang terakhir yaitu tentang hapus data. Materi ini sangat sederhana sekali, nantinya saya akan menjabarkan tentang fitur menghapus data berdasarkan ID, dan menghapus data semua ID.
Untuk yang masih bingung, silahkan simak artikel sebelumnya yaitu tentang update data.
Tutorial CRUD RestApi Dengan Expressjs dan MySQL Bagian #4 Update Data
Seperti sebelumnya, pertama, buka folder models dan tambahkan kode berikut ini pada peserta.model.js tambahkan kode itu pada baris paling bawah.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
// buat construktor //model menampilkan semua data di tabel //model menampilkan data per idp //model insert data ke tabel // model update data //-------------------------------------------------------------------------------------- // hapus data per-id Peserta.remove = (idp, result) => { sql.query("DELETE FROM peserta WHERE idp = ?", idp, (err, res) => { if (err) { console.log("error: ", err); result(null, err); return; } if (res.affectedRows == 0) { result({ kind: "tidak ada data" }, null); return; } console.log("terhapus data idp : ", idp); result(null, res); }); }; //-------------------------------------------------------------------------------------- // hapus semua data Peserta.removeAll = result => { sql.query("DELETE FROM peserta", (err, res) => { if (err) { console.log("error: ", err); result(null, err); return; } console.log('terhapus ${res.affectedRows} peserta'); result(null, res); }); }; |
Setelah urusan models sudah selesai, sekarang beralih pada controllers. Buka file peserta.controller.js dan tambahkan kode berikut ini.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
// controller temukan semua data // controller temukan data per-id // controller buat dan simpan data // controller update data //-------------------------------------------------------------------------------------- // controller hapus data per-id exports.delete = (req, res) => { Peserta.remove(req.params.pesertaIdp, (err, data) => { if (err) { if (err.kind === "tidak_ada") { res.status(404).send({ message: 'tidak ada data dengan id : ${req.params.pesertaIdp}.' }); } else { res.status(500).send({ message: "tidak bisa hapus data dengan id : " + req.params.pesertaIdp }); } } else res.send({ message: 'data terhapus!' }); }); }; //-------------------------------------------------------------------------------------- // hapus semua data dari tabel exports.deleteAll = (req, res) => { Peserta.removeAll((err, data) => { if (err) res.status(500).send({ message: err.message || "ada beberapa yang error" }); else res.send({ message: 'hapus semua data berhasil!' }); }); } |
Terakhir yaitu membuat route delete dan deleteAll
1 2 |
app.delete("/peserta/:pesertaIdp", peserta.delete); //hapus per id app.delete("/peserta", peserta.deleteAll); //hapus semua data |
dan kode lengkap untuk route
1 2 3 4 5 6 7 8 9 10 |
module.exports = app => { const peserta = require("../controllers/peserta.controller"); app.get("/peserta", peserta.findAll); //temukan semua data app.get("/peserta/:pesertaIdp", peserta.findOne); //temukan data per id app.post("/peserta", peserta.create); //insert data app.put("/peserta/:pesertaIdp", peserta.update); // update per id app.delete("/peserta/:pesertaIdp", peserta.delete); //hapus per id app.delete("/peserta", peserta.deleteAll); //hapus semua data }; |
Sekarang jalankan server kamu dengan cara ketik
1 |
npm start |
dan berikut adalah cara menjalankan ReatAPI delete pada postman. gambar dibawah ini adalah menampilkan peserta idp 7.
dan berikut hapus semua data pada tabel peserta. fitur ini harap digunakan berhati-hati, karena salah-salah data yang kamu punya akan hilang keseluruhan. karena query akan memerintahkan untuk menghapus semua data.
Jika kamu melihat command promt server yang sedang running, maka kamu akan melihat bahwa disana akan ada aktivitas secara realtime untuk aktivitas yang user lakukan.
Selesai….
Selamat mencoba, semoga artikelnya bermanfaat. jikan ada pertanyaan silahkan tinggalkan komentar pada kolom komentar.
Tutorial CRUD RestApi Dengan Expressjs dan MySQL Bagian #1 Membuat Project ExpressJS
Tutorial CRUD RestApi Dengan Expressjs dan MySQL Bagian #2 Menampilkan Data
Tutorial CRUD RestApi Dengan Expressjs dan MySQL Bagian #3 Insert Data
Tutorial CRUD RestApi Dengan Expressjs dan MySQL Bagian #4 Update Data
Tutorial CRUD RestApi Dengan Expressjs dan MySQL Bagian #5 Hapus Data
Tinggalkan Balasan