Press "Enter" to skip to content

Tutorial Python – Membuat Halaman CRUD Python dan MySQL

Pada artikel kali ini saya akan membahas tutorial python tentang bagaimana cara membuat sebuah halaman CRUD dengan menggunakan bahasa pemrograman Python dan database MySQL. CRUD Python dan MySQL yang akan kita buat akan diakses melalui console saja dengan menggunakan script python tanpa menggunakan web.

Membuat Halaman CRUD Python dan MySQL

1. Instalasi

Pertama-tama kamu bisa mengunduh Python di situs resminya di https://www.python.org. Untuk kamu pengguna Mac OSX atau Windows, sudah tersedia versi binary atau installer untuk setiap platform.

Bagi kamu pengguna sistem operasi Linux, Python biasanya sudah terinstall secara default ada setiap Distro masing-masing. Kamu hanya tinggal membuka terminal dan mengetikan Python untuk menjalankan Python Shell.

Tutorial Python - Membuat Halaman CRUD Python dan MySQL - Console

Untuk menggunakan library Python MysqlDB, kamu tinggal tinggal melakukan instalasi lewat aptitude dengan mengetik perintah “sudo apt-get install python-mysqldb” pada console.

Bagi kamu yang menggunakan RedHat / CentOS / Fedora Kamu dapat menggunakan perintah berikut “yum install mysql-python”. Selain itu Kamu juga bisa melalukan instalasi melalui pip dengan mengetikkan “pip install mysql-python”.

2. Struktur Database

Sekarang kita buat database sederhana bernama “python_mysql”, struktur tablenya begini saja.

CREATE TABLE IF NOT EXISTS `user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nama` varchar(50) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=7 ;

INSERT INTO `user` (`id`, `nama`) VALUES
(1, 'Maman'),
(2, 'Supriadi'),
(3, 'Dadang Nurjaman'),
(4, 'Tatang Sutarman'),
(5, 'Jajang Nurjaman');

Nah, kita akan mulai dengan membuat script python sederhana untuk menguji koneksi ke database MySQL. Ketikkan script berikut ini.

3. Koneksi Database

#!/usr/bin/python

import MySQLdb as mdb
import sys

try:
    con = mdb.connect('localhost', 'USERNAME MYSQL', 'PASSWORD MYSQL', 'NAMA DATABASE');
    cur = con.cursor()
    cur.execute("SELECT VERSION()")
    ver = cur.fetchone()
    print "Database version : %s" % ver
    
except mdb.Error, e:
    print "Error %d: %s" % (e.args[0],e.args[1])
    sys.exit(1)
    
finally:        
    if con:    
        con.close()

Beri nama misalkan “test_connection.py”, dan jalankan dengan menggunakan perintah “python test_connection.py”. Jika scriptnya benar, maka hasilnya akan seperti ini

Tutorial Python - Membuat Halaman CRUD Python dan MySQL - Koneksi Database

OK, jika outputnya seperti diatas berarti script koneksi ke database MySQL sudah berhasil. Sekarang kita akan lanjut membuat script CRUD tersebut.

4. Tampil Data (All Rows)

Pada bagian ini kita akan membuat script python untuk menampilkan semua data didalam sebuah table.

#!/usr/bin/python

import MySQLdb as mdb
import sys

con = mdb.connect('localhost', 'USERNAME MYSQL', 'PASSWORD MYSQL', 'DATABASE MYSQL');
cur = con.cursor()

try:
    sql = "SELECT * FROM `user`"
    cur.execute(sql)
    user = cur.fetchall()

for val in user:
    print "Nama : %s" %val[1]

except:
    print "Select Data Gagal"

if con:    
    con.close()

Simpan dengan nama “fetchall.py” dan jalankan dengan perintah “python fetchall.py”. Outputnya harusnya seperti dibawah ini.

$ python fetchall.py
Nama : Maman
Nama : Supriadi
Nama : Dadang Nurjaman
Nama : Tatang Sutarman
Nama : Jajang Nurjaman

Baca Juga : Tutorial Penggunaan Array di Python

5. Tampil Data (Single Row)

Untuk script berikut ini yang akan kita lakukan adalah hanya menampilkan 1 data saja dari database.

#!/usr/bin/python

import MySQLdb as mdb
import sys

con = mdb.connect('localhost', 'USERNAME MYSQL', 'PASSWORD MYSQL', 'DATABASE MYSQL');
cur = con.cursor()

try:
    sql = "SELECT * from `user` WHERE `id` = '%s'" % ('1')
    cur.execute(sql)
    user = cur.fetchone()
    print "Nama : %s" %user[1]
except:
    print "Select Data Gagal"
        
if con:    
    con.close()

Berbeda dengan sebelumnya, fetchone() ini digunakan untuk menampilkan 1 baris data saja. Simpan dengan nama “fetchone.py” dan jalankan dengan perintah “python fetchone.py”. Outputnya harusnya seperti dibawah ini.

$ python fetchone.py
Nama : Maman

6. Simpan Data

Selain menampilkan data, kita akan membuat script python untuk menyimpan data ke database MySQL.

#!/usr/bin/python

import MySQLdb as mdb
import sys

con = mdb.connect('localhost', 'USERNAME MYSQL', 'PASSWORD MYSQL', 'DATABASE MYSQL');
cur = con.cursor()
 
sql = "INSERT INTO `user` (`id`,`nama`) VALUE ('%s', '%s')" % (0, "Marjinal")

try:
    cur.execute(sql)
    con.commit()
    print "Input Data Berhasil"
    print cur._last_executed
except:
   con.rollback()
   print "Input Data Gagal"
   print cur._last_executed
   
       
if con:    
    con.close()

Simpan dengan nama “insert.py” dan jalankan dengan perintah “python insert.py”. Outputnya harusnya seperti dibawah ini.

$ python insert.py
Input Data Berhasil
INSERT INTO `user` (`id`,`nama`) VALUE ('0', 'Marjinal')

7. Ubah Data

Sekarang kita berpindah ke bagian ini, disini kita akan membuat script untuk mengubah atau memperbaharui data di database MySQL.

#!/usr/bin/python

import MySQLdb as mdb
import sys

con = mdb.connect('localhost', 'USERNAME MYSQL', 'PASSWORD MYSQL', 'DATABASE MYSQL');
cur = con.cursor()
 
sql = "UPDATE user SET nama = '%s' WHERE `id` = '%s'" % ('Supriadi', '2')

try:
    cur.execute(sql)
    con.commit()
    print "Update Data Berhasil"
    print cur._last_executed
except:
   con.rollback()
   print "Update Data Gagal"
   print cur._last_executed
   
       
if con:    
    con.close()

Simpan dengan nama “update.py” dan jalankan dengan perintah “python update.py”. Outputnya harusnya seperti dibawah ini.

$ python update.py
Update Data Berhasil
UPDATE user SET nama = 'Supriadi' WHERE `id` = '2'

8. Hapus Data

Ini adalah bagian yang terakhir, disini kita akan membuat script untuk menghapus data tertentu dari database seusai dengan paramater yang sudah kita tentukan.

#!/usr/bin/python

import MySQLdb as mdb
import sys

con = mdb.connect('localhost', 'USERNAME MYSQL', 'PASSWORD MYSQL', 'DATABASE MYSQL');
cur = con.cursor()
 
sql = "DELETE FROM `user` WHERE `id` = '%s'" % ("6")

try:
    cur.execute(sql)
    con.commit()
    print "Hapus Data Berhasil"
    print cur._last_executed
except:
   con.rollback()
   print "Hapus Data Gagal"
   print cur._last_executed
   
       
if con:    
    con.close()

Simpan dengan nama “delete.py” dan jalankan dengan perintah “python delete.py”. Outputnya harusnya seperti dibawah ini.

$ python delete.py
Hapus Data Berhasil
DELETE FROM `user` WHERE `id` = '6'

Segitu saja dulu, nanti kita update lagi ya tutorial tentang CRUD dengan menggunakan Python dan MySQL ini. Untuk source code fullnya bisa didownload disini. Silahkan dicoba dan semoga bermanfaat. 😀

7 Comments

  1. Abdul Djalil Djayali Abdul Djalil Djayali Juli 8, 2015

    Bermanfaat banget bang.
    Kapan nih bisa ke Ternate? 😀

    • El Cicko El Cicko Post author | Juli 9, 2015

      hahahaha…ntar lah kalau mau bulan madu 😀

  2. Hilman Hilman Agustus 31, 2015

    saya sangat tertarik dengan tulisan anda, saya juga mempunyai tulisan sejenis
    yang mungkin anda juga tertarik, anda bisa mengunjunginya di klik disini terima kasih.

  3. Rian Rian Juli 26, 2016

    Bikinin Tutorial Crud via webnya pake Django jg dong bang.

    di tunggu ya,

    makasih ~

  4. mr. x mr. x September 9, 2016

    ada yang salah, apanya bang mohon pencerahan

    File “fetchall.py”, line 14
    for val in user:
    ^
    SyntaxError: invalid syntax

    • asd asd Oktober 25, 2016

      sama nih gan

      • El Cicko El Cicko Post author | Oktober 26, 2016

        coba perhatikan tabulasinya gan, soalnya python sangat sensitif soal tabulasi

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *