Python
Python
http://elcicko.com/crud-dasar-dengan-menggunak...
Python (http://elcicko.com/category/python/)
(http://www.hupso.com/share/)
Tweet
Like
Share
(http://elcicko.com/wp-content/uploads
/2015/07/crud-dasar-dengan-menggunakanpython-dan-mysql.png)Halo, akhirnya bisa
ngeposting lagi setelah beberapa hari ini
agak vakum karena beberapa kesibukan.
Gimana puasanya guys? mudah-mudahan
lancar terus ya sampe abis. Ini juga artikel
pertama saya di domain saya yang baru
semenjak saya memutuskan berhenti menggunakan domain http://elcicko.web.id.
(http://elcicko.web.id)
Pada kesempatan kali ini saya mau membahas soal Python, karena beberapa hari ini kerjaan
saya berhubungan sama bahasa pemrograman yang satu ini. Nah, kali ini saya akan
membahas tutorial bagaimana script Python dapat mengakses database MySQL melalui
Python Shell atau Console. Loh? koq lewat console? bukan di web? Kebetulan kalo untuk di
web ya nanti ada lagi tutorialnya, kita bisa pake Django Framework untuk bikin web. Yang
bakal kita bahas kali ini yaitu CRUD dasar dengan menggunakan Python dan MySQL.
Pertama-tama kamu bisa mengunduh Python di situs resminya di https://www.python.org
(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.
1 of 11
09/07/15 05:38
http://elcicko.com/crud-dasar-dengan-menggunak...
(http://elcicko.com/wp-content/uploads/2015/07/python-shell.png)
Untuk menggunakan library Python MysqlDB, kamu tinggal tinggal menginstallnya lewat
aptitude sudo apt-get install python-mysqldb bagi kamu yang menggunakan Ubuntu /
distro turunannya atau yum install mysql-python bagi kamu yang menggunakan RedHat /
CentOS / Fedora. Kamu juga bisa menginstallnya lewat pip dengan mengetikkan pip install
mysql-python.
Sekarang kita buat database sederhana bernama python_mysql, struktur tablenya begini
saja.
1
2
3
4
5
6
7
8
9
10
11
12
Nah, kita akan mulai dengan membuat script python sederhana untuk menguji koneksi ke
database MySQL. Ketikkan script berikut ini.
2 of 11
09/07/15 05:38
http://elcicko.com/crud-dasar-dengan-menggunak...
#!/usr/bin/python
import MySQLdb as mdb
import sys
try:
except mdb.Error, e:
print "Error %d: %s" % (e.args[0],e.args[1])
sys.exit(1)
finally:
if con:
con.close()
(http://elcicko.com/wp-content/uploads/2015/07/test-connection-python-mysql.png)
OK, jika outputnya seperti diatas berarti script koneksi ke database MySQL sudah berhasil.
Sekarang kita lanjut ke bagian berikutnya.
SELECT DATA (FETCH ALL)
3 of 11
09/07/15 05:38
http://elcicko.com/crud-dasar-dengan-menggunak...
#!/usr/bin/python
import MySQLdb as mdb
import sys
con = mdb.connect('localhost', 'USERNAME MYSQL', 'PASSWORD MYSQL', 'DATABASE MYSQL'
cur = con.cursor()
try:
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.
(http://elcicko.com/wp-content/uploads/2015/07/python-mysql-fetchall.png)
SELECT DATA (FETCH ONE)
4 of 11
09/07/15 05:38
http://elcicko.com/crud-dasar-dengan-menggunak...
#!/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.
(http://elcicko.com/wp-content/uploads/2015/07/python-mysql-fetchone.png)
INSERT DATA
5 of 11
09/07/15 05:38
http://elcicko.com/crud-dasar-dengan-menggunak...
#!/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.
(http://elcicko.com/wp-content/uploads/2015/07/python-mysql-insert.png)
UPDATE DATA
6 of 11
09/07/15 05:38
http://elcicko.com/crud-dasar-dengan-menggunak...
#!/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.
DELETE DATA
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#!/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.
7 of 11
09/07/15 05:38
http://elcicko.com/crud-dasar-dengan-menggunak...
(http://elcicko.com/wp-content/uploads/2015/07/python-mysql-delete.png)
Segitu aja dulu, nanti kita update lagi ya tutorial tentang CRUD dengan menggunakan Python
dan MySQL ini. Untuk source code fullnya bisa didownload disini (https://app.box.com
/s/4tgg2s3c9mi1t66rmzivt6tlacuu83te). Silahkan dicoba dan semoga bermanfaat.
crud (http://elcicko.com/tag/crud/)
mysql (http://elcicko.com/tag/mysql/)
python (http://elcicko.com/tag/python/)
EL CICKO (HTTP://ELCICKO.COM/AUTHOR/C1CK0/)
Hanya seorang programmer gemblung yang masih harus belajar dan mencoba
untuk share di blog yang sederhana ini.
LEAVE A REPLY
Your email address will not be published. Required elds are marked *
Name *
Email *
8 of 11
09/07/15 05:38
http://elcicko.com/crud-dasar-dengan-menggunak...
Website
Comment
You may use these HTML (HyperText Markup Language) tags and attributes: <a href="" title=""> <abbr
title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title=""
data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class=""
title="" data-url=""> <span class="" title="" data-url="">
POST COMMENT
Search...
KEEP IN TOUCH
9 of 11
09/07/15 05:38
http://elcicko.com/crud-dasar-dengan-menggunak...
Tweets
Follow
R.F.H
@elcicko
22h
22h
Tweet to @elcicko
RECENT POSTS
CRUD Dasar Dengan Menggunakan Python dan MySQL (http://elcicko.com/crud-dasar-denganmenggunakan-python-dan-mysql)
Membuat Paket Debian Dari Aplikasi HTML5 (http://elcicko.com/membuat-paket-debiandari-aplikasi-html5)
Langkah Mudah Instalasi Apache Cordova Di Ubuntu (http://elcicko.com/langkah-mudah-instalasiapache-cordova-di-ubuntu)
10 of 11
09/07/15 05:38
http://elcicko.com/crud-dasar-dengan-menggunak...
POPULAR POSTS
(http://el
cicko.co
koordinat-di-google-maps-dengan-combobox)
19 May , 2013
/menggunakan-geocoder-autocomplete-untuk-mengisi-form-alamat)
11 Mar , 2014
(http://el
cicko.co
polygon-dari-kml-di-google-maps)
31 Jan , 2013
(http://el
cicko.co
dengan-php-lanjutan)
28 Apr , 2011
MESSENGER
(ymsgr:sendIM?richy_4rumi)
11 of 11
09/07/15 05:38