Belajar Golang #44 : Membuat REST API + MySQL – Delete Data

Tutorial Golang ke-44 yaitu membuat REST API dengan Golang menggunakan Database MySQL dimana tutorial ini akan melakukan delete data dalam bentuk data json.

Tutorial CRUD API golang untuk aksi hapus kali ini lanjutan dari tutorial :

Membuat REST API + MySQL – Delete Data

Delete data api dengan Golang dan MySQL merupakan seri terakhir dari belajar membuat CRUD API dengan golang dan MySQL.

Apa saja yang ingin kita lakukan ?

  • Membuat Routing untuk Delete.
  • Membuat Method Delete.
  • Membuat Query Delete Ke database MySQL.

Langsung saja mari kita buat kode nya satu persatu.

Membuat Routing dan Method

Untuk membuat routing dan method kita menggunakan file main.go. Dimana untuk routingnya sendiri terdapat pada fungsi main. Sedangkan untuk method baru nya yaitu DeleteMahasiswa().

Berikut ini kode routing untuk aksi delete.

Dan kode lengkap pada fungsi main() adalah

Jika sudah saat nya membuat fungsi atau method baru dengan nama DeleteMahasiswa

Berikut ini kode nya :

Perhatikan kode di atas, kita menggunakan standart method routing dimana untuk melakukan delete data maka kita harus menggunakan method DELETE.

Untuk menghapus data MySQL kita membutuhkan parameter id sebagai kunci penghapusan, bahasa umumnya yaitu primary key(PK).

Untuk mengambil id dengan model url ?id=blabla dengan menggunakan kode r.URL.Query().Get("id").

Secara default, nilai balik dari kode di atas string, maka dari itu kita harus mengubah nya ke dalam bentuk integer agar sesuai dengan struct Mahasiswa di tandai dengan kode strconv.Atoi(id).

Selanjutnya jika sudah berhasil mengambil id dari parameter maka akan di panggil fungsi Delete yang ada di mahasiswa/repository_mysql. Asumsikan dulu kita udah punya.

Sehingga di file main.go kode lengkapnya seperti di bawah ini.

main.go

Sekarang mari kita buat fungsi Delete di file mahasiswa/repository_mysql.go.

Query Delete Data Database MySQL dengan Golang

Kita akan buat fungsi dengan nama Delete di file mahasiswa/repository_mysql.go.

Berikut ini kodenya :

mahasiswa/repository_mysql.go

Perhatikan kode di atas, untuk melakukan delete data kita menggunakan query DELETE dengan parameter Primary Key, dalam contoh di atas adalah id.

Query MySQL delete berada pada isi variable queryText dan di eksekusi dengan perintah exec.

Lalu ketika ada error maka akan mengambalikan nilai error.

Atau apabila id yang di masukkan tidak ada maka akan membuat custom error sendiri di tandai dengan kode return errors.New("id tidak ada ").

Oh iya, pada kode di atas terdapat kode RowsAffected. Kode tersebut untuk mengambil nilai dari apa yang sudah kita hapus.

Sehingga kode lengkapnya berikut ini :

mahasiswa/repository_mysql.go

Uji Coba Delete data REST API dengan Golang + MySQL

Jika sudah semua, saatnya kita melakukan uji coba.

Sebelumnya silahkan pilih terlebih dahulu id yang mau di hapus.

Sebagai contoh saya akan menghapus id dengan nilai 5 dengan data berikut ini.

Sekarang saya akan hapus dengan end point http://localhost:7000/mahasiswa/delete?id=5.

Dan lihat hasilnya.

Belajar Golang #44 : Membuat REST API + MySQL – Delete Data
Cara Hapus data API dengan Golang daari database MySQL.

Apabila respon nya yaitu kode status 200 dan terdapat response json seperti gambar di atas maka kita sudah berhasil melakukan delete data api dengan Go dan MySQL.

Agar lebih yakin, silahkan lihat di database anda apakah data benar hilang atau tidak.

Anda bisa mendapatkan kode lengkap nya di

https://github.com/kodingindotkom/golang-api-mysql

Oke sekian tutorial cara hapus data api dengan Golang dari database MySQL. Terima kasih.

2 Comments

  1. Permisi , Apakah saya boleh translate konten agan dan saya post di website saya…

Leave a Reply