Setelah mempelajari dasar Python hingga teknik debugging pada seri Belajar Python part 10, kini saatnya kita melangkah ke tahap berikutnya, yaitu menghubungkan Python dengan database. Dalam seri Belajar Python Part 11 ini, kita akan mempelajari cara menginstal modul yang diperlukan, membuat koneksi ke database, serta menyiapkan database dan tabel yang siap digunakan dalam pengembangan aplikasi.
Instalasi Modul MySQL Connector
Hampir di semua aplikasi yang dibuat baik berbasis aplikasi, web, desktop maupun automasi script membutuhkan tempat untuk penyimpanan data secara permanen yaitu database. Salah satu jenis database yang digunakan adalah MySQL, pada python dibutuhkan modul untuk penghubungnya yaitu MySQL connector.
Modul ini berisi fungsi-fungsi class yang menjadi jembatan antara script Python dan server MySQL. Adapun langkah-langkah instalasi modul ini sebagai berikut.
Instalasi via pip
Buka terminal dan jalankan:
$ pip3 install mysql-connector-pythonInstalasi via APT (Ubuntu/Debian)
$ sudo apt install python3-mysql.connectorSetelah instalasi selesai, coba jalankan:
python3 -c "import mysql.connector; print('OK')"Jika muncul OK, modul sudah siap.
Kemudian, koneksi ke MySQL dibuat menggunakan fungsi mysql.connector.connect() dengan menyertakan beberapa parameter. Buat file baru bernama connect.py:
import mysql.connector
db = mysql.connector.connect(
host="localhost",
user="root",
passwd=""
)
if db.is_connected():
print("Berhasil terhubung ke MySQL!")
else:
print("Koneksi gagal.")Jalankan dengan perintah berikut:
$ python3 connect.pyJika berhasil, akan muncul output:
Berhasil terhubung ke MySQL!Keterangan parameter:
- host : Alamat server MySQL yang dituju. Dapat diisi dengan localhost.
- user : Username untuk login ke MySQL. Dapat diisi dengan root.
- passwd : Password MySQL
- database Nama database yang akan digunakan
Note:
Pengguna XAMPP Gunakan user=”root” dan passwd=”” karena itulah konfigurasi default XAMPP. Jangan lupa pastikan MySQL di XAMPP sudah dijalankan (tombol Start).
Membuat Database
Langkah selanjutnya setelah koneksi berhasil dibuat adalah membuat database. Pada pembuatan database ke MySQL, memerlukan cursor yang bertugas mengirimkan perintah SQL (query ke server MySQL dan menyimpan hasilnya. Berikut langkah-langkah pembuatannya.
Jalankan perintah berikut.
cursor = db.cursor()Setelah cursor ada, kita bisa mengeksekusi query SQL menggunakan method execute():
cursor.execute("perintah SQL di sini")Membuat Database Baru
Kemudian buat file baru bernama create_db.py, kemudian isi dengan kode berikut:
import mysql.connector
db = mysql.connector.connect(
host="localhost",
user="root",
passwd=""
)
cursor = db.cursor()
cursor.execute("CREATE DATABASE toko_online")
print("Database toko_online berhasil dibuat!")Jalankan file tersebut:
$ python3 create_db.pyJika berhasil tampilannya akan seperti ini:
Database toko_online berhasil dibuat!Melihat Daftar Database
Kita juga bisa menampilkan daftar semua database yang ada di server MySQL dengan menjalankan :
cursor.execute("SHOW DATABASES")
for db_name in cursor:
print(db_name)Membuat Tabel
Setelah database tersedia, kita perlu menambahkan parameter database pada saat membuat koneksi agar Python tahu database mana yang akan digunakan.
db = mysql.connector.connect(
host="localhost",
user="root",
passwd="",
database="toko_online" # <-- tambahkan ini
)Selanjutnya buat file create_table.py untuk membuat tabel di dalam database tersebut:
import mysql.connector
db = mysql.connector.connect(
host="localhost",
user="root",
passwd="",
database="toko_online"
)
cursor = db.cursor()
sql = """
CREATE TABLE produk (
id INT AUTO_INCREMENT PRIMARY KEY,
nama VARCHAR(255) NOT NULL,
harga DECIMAL(10,2),
stok INT DEFAULT 0,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
)
"""
cursor.execute(sql)
print("Tabel produk berhasil dibuat!")Jalankan:
$ python3 create_table.pyKeterangan:
- id: Nomor unik yang dibuat otomatis untuk setiap data (Primary Key).
- nama : Nama produk dengan panjang maksimal 255 karakter.
- harga : Harga produk dengan format angka desimal dan 2 angka di belakang koma.
- stok : Jumlah stok produk, dengan nilai default 0 jika tidak diisi.
- created_at: Waktu saat data dibuat, diisi otomatis oleh sistem.
FAQ
Berikut adalah beberapa pertanyaan populer tentang cara menghubungkan Python ke Database.
1. Apa fungsi MySQL Connector pada Python?
MySQL Connector adalah modul yang digunakan untuk menghubungkan aplikasi Python dengan database MySQL. Dengan modul ini, Python dapat melakukan berbagai operasi database seperti membuat koneksi, membuat database, membuat tabel, serta menjalankan query untuk mengelola data.
2. Apakah Python bisa terhubung ke database selain MySQL?
Ya, Python dapat terhubung ke berbagai jenis database selain MySQL, seperti PostgreSQL, SQLite, MariaDB, hingga MongoDB. Hal ini dimungkinkan karena Python memiliki banyak library atau modul yang dirancang untuk berinteraksi dengan berbagai sistem database tersebut.
3. Mengapa aplikasi perlu terhubung dengan database?
Database digunakan untuk menyimpan data secara terstruktur dan permanen. Dengan menghubungkan aplikasi Python ke database, data seperti informasi pengguna, transaksi, atau log aktivitas dapat disimpan, dikelola, dan diakses kembali dengan lebih mudah.
Penutup
Dalam seri belajar Python part 11 ini, kita telah mempelajari cara menghubungkan Python dengan database MySQL menggunakan modul MySQL Connector, mulai dari instalasi modul, membuat koneksi ke server MySQL, hingga menyiapkan database dan tabel untuk menyimpan data.
Pemahaman ini menjadi dasar penting dalam pengembangan aplikasi, karena hampir semua aplikasi membutuhkan sistem penyimpanan data yang terstruktur.
Pada Belajar Python Part 12, kita akan melanjutkan pembahasan dengan mempelajari cara melakukan operasi dasar pada database (CRUD), yaitu menambahkan, menampilkan, memperbarui, dan menghapus data menggunakan Python. Semoga bermanfaat.


