Seperti yang kita ketahui, Python adalah bahasa pemrograman yang mendukung hampir semua platform seperti desktop, web dan yang terbaru adalah mobile android dengan kivy, selain itu sebagian besar penggunaan python sebagai dasar scripting untuk berbagai aplikasi. Tentu saja, sebagai bahasa scripting, python juga mendukung koneksi dengan database, misalnya python secara default mendukung penggunaan SQLite, dan tentu saja juga mendukung database lain seperti database postgresql, mysql, atau nosql seperti mongoDB dll. Pada tutorial kali ini saya ingin menjelaskan sedikit tentang cara menghubungkan Python dengan Database Mysql Persiapan lingkunganUntuk menggunakan Mysql di Python tentunya kita harus install mysql server, misalnya bisa menggunakan xampp/lampp atau mysql server yang bisa di download disini. Dalam tutorial ini, saya menggunakan Lampp sebagai server mysql. Saya berasumsi bahwa Anda telah menginstal mysql-server di laptop Anda masing-masing Setelah itu, kita bisa menyiapkan driver mysql sebagai penghubung antara python dan mysql-server. Ada banyak jenis driver untuk mysql, seperti Mysql-Connector, PyMysql, atau MysqlClient. Pada tutorial kali ini saya sarankan untuk menggunakan mysqlclient, karena dua yang sebelumnya memiliki kekurangan seperti performa dan jarang update (saya tidak akan membahas ini XD) Instal MysqlClientSebelum memulai, untuk pengguna linux berbasis debian, pengguna ubuntu atau macOS, harus menginstal pengembangan header python dan mysql dengan cara berikut
atau di MacOS _setelah menginstal header pengembangan, lanjutkan dengan menginstal mysqlclient melalui pip
Tentu saja, secara umum, python dapat menggunakan berbagai metode untuk memanggil perpustakaan, dengan metode langsung, fungsi, atau model orientasi objek Pada bagian ini, saya akan menunjukkan 2 cara, menggunakan metode langsung dan metode OOP Membuat Basis DataUntuk metode pertama, kami menggunakan metode koneksi langsung. Sebelumnya kita harus membuat database dulu yaaaa XD, oke mari kita ketikkan script berikut ini _lalu isikan datanya menggunakan script berikut, Pilih Koneksi LangsungSetelah data dimasukkan ke dalam database, langkah selanjutnya adalah melakukan query dengan menggunakan python. Pada contoh ini saya menggunakan metode direct connection yang artinya bagaimana menghubungkannya secara langsung tanpa menggunakan class oke ini contohnya _pertama kita harus memanggil MysqlDB menggunakan sintaks impor. lalu kita sambungkan ke database dan simpan di variabel koneksi Setelah itu kita tentukan kursor pada object connection dan simpan dengan nama yang sama, yaitu kursor dimana kursor ini akan digunakan untuk mengeksekusi query ketika query dieksekusi oleh kursor, maka kita dapat menampilkannya dalam beberapa cara, fetchall yang mengambil semua baris dalam database, kemudian ada yang mengambil data paling atas dan hasil dari kode diatas adalah sebagai berikut Koneksi Langsung INSERT dan DELETESeperti kebanyakan koneksi dengan database, tentunya ada yang namanya CRUD atau CREATE, READ, UPDATE Delete, maka kali ini kita akan mencoba insert dan delete database Berikut adalah contoh insert database;
pada insert database, kita menggunakan sintaks dasar mysql yaitu insert, yang diikuti string lateral dengan metode bind parameter, yaitu kita membuat parameter menggunakan list, bukan lewat string, karena ini akan mudah di SQL Injection misalnya menghapus _PEMBARUAN Koneksi Langsungselanjutnya update data di database, _Sama seperti sebelumnya, kita manfaatkan parameter bind, dengan membuat konten menjadi form list sebagai salah satu upaya menghindari sql injection, Kelas KoneksiMetode selanjutnya adalah menggunakan kelas untuk menginisialisasi koneksi ke database. Pada contoh ini saya hanya menggunakan class sebagai inisiator untuk melakukan koneksi ke database, untuk query masih menggunakan cara biasa, sebagai catatan, ada 1 tool yang lebih baik dari segi efisiensi dan keamanan kode, yaitu dengan menggunakan orm seperti sql-alchemy yang akan dibahas pada tutorial Flask Versi 2 Oke langsung saja kita implementasikan, pertama kita buat class connection, dalam hal ini saya beri nama file connection. py _0pada kelas fungsi di atas, kita menginisialisasi parameter untuk koneksi yang diinisialisasi pada metode init, sedangkan untuk mengembalikan hasil koneksi, kita menggunakan metode getDB dalam hal ini untuk mengembalikan kursor yang akan dipanggil saat kita mengeksekusi, dan untuk mengakhiri koneksinya kita menggunakan metode delcon, sedangkan metode yang lain hanyalah metode pendukung, sebenarnya untuk lebih mudahnya kita bisa membuat metode crud khusus seperti metode memilih dan sebagainya, namun karena keterbatasan waktu, saya hanya dibuat dasarnya Setelah itu, kami membuat file baru untuk menguji apakah koneksi kami berhasil dan melakukan kueri. dalam hal ini saya menggunakan connectionTes. py _1dalam hal ini, saya mengimpor kelas koneksi sebagai db. Setelah itu diinisialisasi dengan variabel baru bernama mysqli. dan buat objek kursor di db dengan memanggil objek kelas mysql. getDB() untuk querynya hampir sama dengan yang sebelumnya. perbedaannya adalah kita menghubungkannya menggunakan kelas, PENUTUPANselebihnya tergantung bagaimana pembaca mengoptimalkan baik dari sisi program maupun dari sisi query, karena pada dasarnya tidak ada sistem yang aman. Hal inilah yang membuat banyak developer berlomba-lomba mengembangkan teknik atau tools agar lebih memberikan keamanan seperti yang saya sebutkan sebelumnya yaitu menggunakan orms seperti sql-alchemy. Akhir kata dengan tutorial singkat ini insyaallah para pembaca dapat sedikit belajar tentang teknik membuat koneksi dengan database, untuk tutorial selanjutnya yaitu mengimplementasikannya menggunakan FLASK untuk source codenya bisa di download di github saya Memuat Programmer asal Indonesia, penggila Dark World khususnya kopi dan terminal, punya cita-cita menjadi pythonist Basis data apa yang digunakan Python?Antarmuka Python standar untuk database adalah Python DB-API . Sebagian besar antarmuka database Python sesuai dengan standar ini.
Apa itu bahasa pemrograman Python?Python adalah bahasa pemrograman yang banyak digunakan dalam aplikasi web, pengembangan perangkat lunak, ilmu data, dan pembelajaran mesin (ML) . Pengembang menggunakan Python karena efisien dan mudah dipelajari serta dapat dijalankan di berbagai platform. |