Python MySql Bağlantısı (Connection)

Python MySql Bağlantısı (Connection)

Tarhi : 04-03-2022 07:02:06 | Yazar : ÇAĞLAR BOSTANCI

Merhaba bu yazımızda sizlerle python ile mysql veri tabanı bağlantı işlemlerini yapcağız. Mysql Oracle tarafından geliştirlen bir veri tabanıdır. Hali hazırda php,.net,java gibi bir çok programlama dilleri tarafındanda ücretsiz olarak kullanılmaktadır. Python ile mysql işlemleri yapabilmeniz için öncelikle mysql veri tabanınızın kurulu olması gerekmetedir. Bu işlem iki şekilde gerçeleştirilebilir. İster seni mysql.com adresinden indirebilirsiniz.

Mysql veritabanızı kurduğunuzu var sayarak şimdi python için mysql-connector’un kurulması gerekmektedir. Öncelikle siteminiz de python dosyasının kurulduğu dizini bulun ve python dizini içerisinde script dizinine giriniz benim bilgisayarımda aşağıdaki gibidir.
C:\Users\webMaster\AppData\Local\Programs\Python\Python39\Scripts
bu dizini bulduktan sonra konsola cmd yazın ve gelen siyah ekranda aşağıdaki kodu kendi sistem dizininize göre uyarlayıp çalıştırınız.
cd C:\Users\webMaster\AppData\Local\Programs\Python\Python39\Scripts
Daha sonra python mysql kurulumu için aşağıdaki pip install komudunu veriniz. pip install mysql-connector-python
Hata metini almıyorsanız ve consolda sistem yüklemesi olmuşsa success olarak bir çıktı alacaksınız. Buraya kadar tam olarak ulaşmışsanız şimdi başlayabiliz. .

Python MYSQL Veritabanı Bağlantısı

Öncelikle bağlantıyı kurabilmeniz için sayfa başında import msyql.connector satırını ekleyerek mysql.connector modülünü çağıralım. Daha sonra aşağıdaki kodlama düzeninde sistem bilgilerini verelim.

Öncelikle sayfamıza mysql.connector pakatini dahil ediyoruz

Şimdi de mysql bağlantı bilgilerimizi girerek bağlantımızı kuralım.

Eğer çalıştırdığınızda hata almıyorsanız problem yok demektir. Şimdi ise bir tane veri tabanı oluşturalım.

Yukarıda yeni bir vertabanı oluşturduk ve mysql de bulunana ver tabanlarını listeledik. Şimdi ise istediğimiz bir vertabanına bağlanalım ve yeni bir tablo oluşturalım.

Şimdi ise oluştuduğumuz veritabanına kullanıcılarımızı ekleyelim.

Tabi her zaman verilermizi tek tek girmeyeceğiz toplu olarakta veri girişleri yapmamız gerekebilir. Şimdi aşağıdaki örneğimizde ise birden çok veri girişini yapalım.

Hadi şimdi hep beraber veritabanına girmiş olduğumuz verileri ekrana pasalım.

Bütün kullanıcılarımızı listeledik aynı zamanda eğer istersek where şartı kullanara belirli şartlara görede kullanıcılarımızı listeleyebirlir.Pyton mysql veritabanı kullanımında belirli bir id deki kullanıcımızı listeleyelim.

Tabi buraya kadar mysql genel sorgularını öğrenmiş olduk şimdi ise iki tablo verisini inner join ile birleştirerek ekrana basmayı öğrenelim. Inner join kullanımınızı ve diğer msyql sorguları bildiğinizi varsayarak devam ediyorum. Elimzde bulunan kullanıcılar tablosu ile bu kullanıcıların detay bilgilerinin bulunduğu “detay” tablosunu birleştirerek ekrana çıktı alalım.

Peki veritabanından gelen verileri sütun isimlerine göre listelemek istersek ne yapacağız. Öncelikle sütün isimlerini cursor.column_names ile alıyoruz. Sonra diğer gelen satırlarla bunu eşleştiriyoruz. Tabi bunun izin zip metodundan yararlanıyoruz. Bu bize ("sutun_adi","veri") şeklinde bir değer dönderir. Bu gelen veriyide dict methodu ile bir sözlük(dict) oluşturmuş oluruz.

Python ile MySQL veri tabnı bağlantısında en önemli sorunlardan biride mysql python bağlantısında procedur’leri nasıl çalıştıracağımız. Saklı yordamlar yani prosedürler programcılar için performans ve güvenlik açısından önem arzetmektedir. Gelin isterseniz bir prosedürü nasıl çalıştıracağımızı görelim

Son olarak eğer bağlantınızı linux bir işletim sistemi (Ubuntu,pardus vs.) üzerinden yapıyorsanız “Authentication plugin ‘caching_sha2_password’ is not supported” hatası alabilirsiniz. Bunu önlemek için bağlantı kurduğumuz scripte ek parametere olarak auth_plugin='mysql_native_password' yazarak sorunu çözebilirsiniz.

Evet arkadaşlar bu yazımızda sizlerle python veritabanı işlemlerini inceledik. Bu öreneklemler sayesinde veritabanı işlemlerinizi artırabilirsiniz. Önerim procedure ve fonksiyon yazarak bunların kullanımını öğrenmenniz ve update delete örenekleri yapabilirisiniz. Başarılar dilerim.