Cara menggunakan crud python mysql

selamat datang buat teman-teman yang bersedian untuk mengunjungi blog saya untuk kita belajar bareng tentang bahasa pemograman python,pada kesempatan hari ini saya ingin share tentang apa membuat aplikasi CRUD engan menggunakan MySql sebagai databasenya. Pada artikel kali ini kita akan belajar bagaimana membuat aplikasi CRUD dengan menggunakan Python dengan database yang dipakai adalah MySQL.

Aplikasi Create, Read, Update, Detele (CRUD) adalah aplikasi standar yang pasti ada jika kita ingin membuat aplikasi web dinamis. Dengan fungsi CRUD kita dapat melakukan manipulasi data di dalam database melalui aplikasi yang dibuat.

Sampai saat ini untuk di indonesia python bukanlah bahasa pemrograman yang populer untuk membuat aplikasi web, kebanyakan dari kita lebih memilih PHP karena lebih mudah dan mempunyai dokumentasi yang banyak. Namun jangan salah di luar negeri trends bahasa python sudah sangat tinggi bahkan lebih tinggi trendnya jika dibandingkan dengan PHP.

Untuk membuat aplikasi web CRUD di python kalian perlu menyiapkan beberapa hal seperti:

  • Server Database MySQL
  • Modul PyMySQL
  • Flask
  • Bootstrap

Database

untuk membuat aplikasi crud kita harus aktifkan terlebih dahulu xamp kita

Cara menggunakan crud python mysql

jika mysql database nya sudah dalam posisi running,silahkan anda buka browser lalu ketikkan http://localhost/phpmyadmin/. Buatlah database dengan nama belajar_python seperti gambar di bawah ini

Cara menggunakan crud python mysql

klik SQL lalu ketikkan code seperti gambar di bawah ini:

Cara menggunakan crud python mysql

pip

Apa itu PIP?

Pip merupakan program manejer paket yang ada di python digunakan untuk menginstall modul yang kita butuhkan dalam hal ini adalah Flask dan PyMySQL.

cara instalasi pip di mac os

sebelum kita membuat aplikasi dengan menggunakan python,sekarang kita instal terlebih dahulu pip di laptop/PC kita.kali ini saya akan share cara nya instal PIP di MacOs. untuk penguna linux dan mohon maaf ya saya tidak share caranya.mungkin teman-teman yg menggunakan OS selain macOs bisa cari referensi nya di google banyak kok. hehehe…

silahkan buka terminal anda lalu ketikkan seperti berikut:

curl https://bootstrap.pypa.io/ez_setup.py -o - | sudo python

Cara menggunakan crud python mysql

masukkan Password laptop anda lalu tekan enter,tunggu hingga instalasi selesai seperti gambar berikut ini

Cara menggunakan crud python mysql

untuk memastikan apakah pip yang barusan kita instal sudah terpasang ataukah gagal apa tidak dalam proses pengistalannya,kita dapat check nya dengan mengetikkan perintah seperti gambar di bawah ini

Cara menggunakan crud python mysql

PyMysql

Apa itu PIP

Pip merupakan program manejer paket yang ada di python digunakan untuk menginstall modul yang kita butuhkan dalam hal ini adalah Flask dan PyMySQL.

carainstalasi pymysql

Untuk menginstall modul PyMySQL sangatlah mudah, kita hanya perlu menginstall lewat program pip. Langkah-langkahnya seperti berikut:

Buka Command Prompt dan ketikan perintah:

python -m pip install PyMySQL

Atau bisa juga

pip install PyMySQL

Cara menggunakan crud python mysql

jika penginstalan berhasil maka akan seperti gambar di atas

Apai itu Flask?

Flask adalah kerangka kerja aplikasi web (web framework) yang bersifat micro, istilah ini dipakai karena flask menyediakan pustaka atau alat bantu inti yang digunakan untuk proses membangun sebuah aplikasi web, jadi istilah micro ini bukan berarti bahwa mengembangkan aplikasi web dengan flask hanya dilakukan dalam skala kecil. Apabila ada kebutuhan lain yang dibutuhkan, flask mengizinkan kita untuk menambah fitur lain yang spesifik sebagai ekstensi.


Cara Menginstal Flask

Kita bisa menginstal flask melalui program pip. Berikut ini adalah cara menginstal flask di pyhton:

  • Buka command prompt (cmd)
  • Ketik pip install flask
Cara menggunakan crud python mysql

Untuk mengecek apakah flask sudah benar-benar berhasil di instal ataukah belum,coba masuk ke dalam IDLE (python shell) dengan cara ketik python untuk masuk ke program python interpreter setelah masuk yang ditandai dengantanda >>> ketik perintah import flask

Cara menggunakan crud python mysql

Jika tidak ada pesan error itu berarti Flask sudah terpasang dengan benar dan siap untuk digunakan.

Membuat Aplikasi CRUD Python dengan MySQL

Langkah pertama kalian buat sebuah folder project dalam direktori komputer kalian, terserah kalian bisa menempatkan di direktori manapun.

Sebagai contoh disini saya membuat folder crud di desktop saya dengan nama belajar_python.

Cara menggunakan crud python mysql

Buat file app.py

Setelah itu buat file app.py menggunakan teks editor. File ini berfungsi sebagai objek aplikasi (kalo di dalam framework lain bisa kita sebut sebagai controller).

from flask import Flask, render_template, \
  request, redirect, url_for
import pymysql.cursors, os

application = Flask(__name__)

conn = cursor = None
#fungsi koneksi database
def openDb():
   global conn, cursor
   conn = pymysql.connect("localhost","root","","belajar_python" )
   cursor = conn.cursor()	
#fungsi untuk menutup koneksi
def closeDb():
   global conn, cursor
   cursor.close()
   conn.close()
#fungsi view index() untuk menampilkan data dari database
@application.route('/')
def index():   
   openDb()
   container = []
   sql = "SELECT * FROM barang"
   cursor.execute(sql)
   results = cursor.fetchall()
   for data in results:
      container.append(data)
   closeDb()
   return render_template('index.html', container=container,)

#fungsi view tambah() untuk membuat form tambah
@application.route('/tambah', methods=['GET','POST'])
def tambah():
   if request.method == 'POST':
      nama = request.form['nama']
      harga = request.form['harga']
      stok = request.form['stok']
      openDb()
      sql = "INSERT INTO barang (nama_barang, harga,stok) VALUES (%s, %s, %s)"
      val = (nama, harga, stok)
      cursor.execute(sql, val)
      conn.commit()
      closeDb()
      return redirect(url_for('index'))
   else:
      return render_template('tambah.html')
#fungsi view edit() untuk form edit
@application.route('/edit/<id_barang>', methods=['GET','POST'])
def edit(id_barang):
   openDb()
   cursor.execute('SELECT * FROM barang WHERE id_barang=%s', (id_barang))
   data = cursor.fetchone()
   if request.method == 'POST':
      id_barang = request.form['id_barang']
      nama = request.form['nama']
      harga = request.form['harga']
      stok = request.form['stok']
      sql = "UPDATE barang SET nama_barang=%s, harga=%s, stok=%s WHERE id_barang=%s"
      val = (nama, harga, stok, id_barang)
      cursor.execute(sql, val)
      conn.commit()
      closeDb()
      return redirect(url_for('index'))
   else:
      closeDb()
      return render_template('edit.html', data=data)
#fungsi untuk menghapus data
@application.route('/hapus/<id_barang>', methods=['GET','POST'])
def hapus(id_barang):
   openDb()
   cursor.execute('DELETE FROM barang WHERE id_barang=%s', (id_barang,))
   conn.commit()
   closeDb()
   return redirect(url_for('index'))
      
if __name__ == '__main__':
   application.run(debug=True)

File app.py adalah file yang menjadi file utama atau bisa kita sebut sebagai controllernya. Dimana file ini sebagai objek aplikasi yang menghubungkan antara template melalui fungsi view() dengan data yang kita ambil dari database MySQL.

Membuat Template

Pada tahap ini kita akan membuat template untuk menampilkan interface aplikasi kepada pengguna. ada 3 template yang akan kita buat yaitu index.html, tambah.html dan edit.html.

Langkah awal kalian harus buat dulu folder templates untuk menyimpan semua file template di dalam satu folder.

Cara menggunakan crud python mysql

1. index.html

Template index.html berfungsi sebagai halama awal untuk menampilkan daftar barang dari database.

Buatlah file index.html menggunakan teks editor, kode nya seperti di bawah ini:

<!-- Code by TaufikBudiBlog
Author: Taufik Budi Setiawan
Author URL: https://taufikbudiblog.wordpress.com
License: Creative Commons Atribusi-NonKomersial 4.0 Internasional
License URL: http://creativecommons.org/licenses/by-nc/4.0/
-->
<html>
<head>
   <title>Aplikasi CRUD python Menggunakan Flask | taufikbudiblog.wordpress.com </title>
   <link rel="stylesheet" href="{{ url_for('static', filename='bootstrap/css/bootstrap.min.css') }}">
</head>
<body>
   <div class="container">
   <h2>Aplikasi CRUD python Menggunakan Flask</h2>
   <table class="table table-bordered table-hover">
      <thead>
      <tr>
          <th>ID Barang</th>
          <th>Nama Barang</th>
          <th>Harga</th>
          <th>Stok</th>
          <th width="10%" colspan="2">Aksi</th>
      </tr>
      </thead>
   
          <tbody>
            {% for row in container %}
            <tr>
               <td>{{ row[0] }}</td>
               <td>{{ row[1] }}</td>
               <td>{{ row[2] }}</td>
               <td>{{ row[3] }}</td>
               <td><a href="http://localhost:5000/edit/{{row[0]}}" class="btn btn-warning" role="button">Ubah</a></td>
               <td><a href="http://localhost:5000/hapus/{{row[0]}}" class="btn btn-danger" role="button">Hapus</a></td>
            </tr>
         {% endfor %}
          </tbody>
   </table>
   <a href="http://localhost:5000/tambah" class="btn btn-primary" role="button">Tambah Data</a>
   </div>
</body>
</html>

Cara menggunakan crud python mysql

2. tambah.html

Template yang kedua adalah tambah.html yang akan berfungsi sebagai from input tambah data ke database. Lakukan cara yang sama seperti langkah sebelumnya.

<!-- Code by TaufikBudiBlog
Author: Taufik Budi Setiawan
Author URL: https://taufikbudiblog.wordpress.com
License: Creative Commons Atribusi-NonKomersial 4.0 Internasional
License URL: http://creativecommons.org/licenses/by-nc/4.0/
-->
<html>
<head>
   <title>Aplikasi CRUD python Menggunakan Flask | taufikbudiblog.wordpress.com </title>
   <link rel="stylesheet" href="{{ url_for('static', filename='bootstrap/css/bootstrap.min.css') }}">
</head>
<body>
   <div class="container">
      <div class="col-sm-5">
      <h2>Tambah Data Barang</h2>
         <form action="{{ url_for('tambah') }}" method="post">
            <div class="form-group">
               <label>Nama Barang:</label>
               <input type="text" name="nama" class="form-control" placeholder="Masukan nama barang" required />
            </div>
            <div class="form-group">
               <label>Harga:</label>
               <input type="number" name="harga" class="form-control" placeholder="Masukan harga" required />
            </div>
            <div class="form-group">
               <label>Stok:</label>
               <input type="number" name="stok" class="form-control" placeholder="Masukan stok" required />
            </div>
            <button type="submit" id="Submit" name="submit" class="btn btn-primary">Tambah Barang</button>
      </form>
   </div>
</div>
</body>
</html>

Cara menggunakan crud python mysql

3. edit.html

Pada template yang ketiga kita membuat edit.html yang berfungsi untuk menampilkan form edit data.

<!-- Code by TaufikBudiBlog
Author: Taufik Budi Setiawan
Author URL: https://taufikbudiblog.wordpress.com
License: Creative Commons Atribusi-NonKomersial 4.0 Internasional
License URL: http://creativecommons.org/licenses/by-nc/4.0/
-->
<html>
<head>
   <title>Aplikasi CRUD python Menggunakan Flask | taufikbudiblog.wordpress.com </title>
   <link rel="stylesheet" href="{{ url_for('static', filename='bootstrap/css/bootstrap.min.css') }}">
</head>
<body>
   <div class="container">
      <div class="col-sm-5">
      <h2>Ubah Data Barang</h2>
         <form action="url_for('edit', id_barang={{data[0]}})" method="post">
            <div class="form-group">
               <input type="hidden" name="id_barang"  value="{{data[0]}}" class="form-control" />
            </div>
            <div class="form-group">
               <label>Nama Barang:</label>
               <input type="text" name="nama"  value="{{data[1]}}" class="form-control" placeholder="Masukan nama barang" required />
            </div>
            <div class="form-group">
               <label>Harga:</label>
               <input type="number" name="harga"  value="{{data[2]}}" class="form-control" placeholder="Masukan harga" required />
            </div>
            <div class="form-group">
               <label>Stok:</label>
               <input type="number" name="stok"  value="{{data[3]}}" class="form-control" placeholder="Masukan stok" required />
            </div>
            <button type="submit" id="Submit" name="submit" class="btn btn-primary">Edit Barang</button>
      </form>
   </div>
</div>
</body>
</html>

Kita tidak membuat fungsi view() hapus karena sudah langsung kita definisikan dari objek aplikasi (lihat pada file app.py).

Konfigurasi Bootstrap

Jika kalian perhatikan pada setiap file template kita menggunakan bootstrap yang di panggil dari tag <head> pada setiap template.

Agar dapat menggunakan bootstrap, silahkan kalian download dulu ya di website nya.

Cara menggunakan crud python mysql

Setelah kalian berhasil mendownload, selanjutnya buatlah folder static lalu simpan file bootstrap di dalam folder tersebut.

Cara menggunakan crud python mysql

Menjalankan Aplikasi

Untuk menjalankan aplikasi kita menggunakan command prompt dengan cara arahkan direktori ke folder project yang kita buat lalu jalankan objek aplikasi menggunakan perintah

python app.py

Cara menggunakan crud python mysql

jika tampil seperti gambar di atas maka pertanda bahwa aplikasi yang sudah kita buat sudah bisa kita jalankan di browser

silahkan anda buka browser anda lalu ketikkan

http://127.0.0.1:5000

maka akan seperti gambar di bawah ini

Cara menggunakan crud python mysql

silahkan anda testing aplikasi yg sudah anda buat

Cara menggunakan crud python mysql
Cara menggunakan crud python mysql

Dengan demikian kita telah berhasil membuat aplikasi web di python dengan mengimplementasi flask sebagai web framewrok dan database mysql untuk membuat aplikasi CRUD sederhana ini, kalian tentunya bisa mengembangkan lebih jauh dari apa yang saya bahas disini.

Buat teman-teman yang masih bingung untuk tutorial yang saya bahas di atas, untuk lebih mudah kalian bisa mendownload secara gratis dibawah ini:

Langkah langkah pembuatan CRUD dalam database MySQL?

Jika Anda belum memahami bagaimana membuat fitur CRUD menggunakan PHP dan MySQL silahkan simak langkah-langkah berikut:.
STEP 1 – Persiapan. ... .
STEP 2 – Membuat Database. ... .
STEP 3 – Buat Koneksi Database. ... .
STEP 4 – Buat View Data. ... .
STEP 5 – Buat Insert Data. ... .
STEP 6 – Buat Update Data. ... .
STEP 7 – Buat Delete Data..

Apa itu CRUD di Python?

Aplikasi Create, Read, Update, Detele (CRUD) adalah aplikasi standar yang pasti ada jika kita ingin membuat aplikasi web dinamis. Dengan fungsi CRUD kita dapat melakukan manipulasi data di dalam database melalui aplikasi yang dibuat.

Apa itu CRUD MySQL?

CRUD adalah operasi khusus yang nantinya akan mengharuskan database untuk membuat, membaca, memperbarui, atau menghapus data.

Langkah langkah membuat CRUD?

Membuat CRUD di Halaman CRUD.
Membuat Sistem Registrasi. Bagian ini nanti Anda akan membuat sebuah form registrasi lengkap dengan database di dalamnya. ... .
Membuat File Config. ... .
Membuat Form Registrasi. ... .
Membuat Sistem Login. ... .
Membuat Form Login. ... .
6. Membuat Halaman Utama. ... .
7. Membuat Script Logout..