Python Flask İçin MySQL Bağlantıları

Python Flask İçin MySQL Bağlantıları

Bu makalede, Flask web uygulamaları için MySQL veritabanına nasıl bağlanılacağı adım adım açıklanmaktadır Öncelikle, MySQL veritabanı oluşturmanız gerekiyor Daha sonra, Flask-MySQL bağlantısı yapılandırılacak ve veritabanı işlemleri gerçekleştirilecektir Flaks-MySQL bağlantısı için gerekli ayarları config dosyanızda yapmalısınız MySQL veritabanına bağlanmak için MySQL Connector/Python modülü kullanmanız gerekiyor Bu yazıyı okuyarak, Flask ve MySQL veritabanı arasındaki bağlantıyı yapabilirsiniz

Python Flask İçin MySQL Bağlantıları

Flask, açık kaynaklı bir Python web uygulama çerçevesidir ve birçok geliştirici tarafından kullanılmaktadır. Flask ile birlikte kullanabileceğiniz veritabanı türlerinden biri de MySQL'dir. Bu makalede, Flask web uygulamaları için MySQL veritabanına nasıl bağlanılacağına dair adımlar ayrıntılı olarak ele alınacaktır.

Öncelikle, bir MySQL veritabanı oluşturmanız gerekecektir. Daha sonra, Flask-MySQL bağlantısı yapılandırılacak ve veritabanı işlemleri gerçekleştirilecektir. Ayrıca, bir örnek uygulama geliştirilerek uygulamanın Flask ve MySQL veritabanını nasıl kullanabileceği belirtilecektir. İster bir başlangıç seviyesindeki geliştirici olun, isterse de bir uzman, bu makale size Flask ve MySQL veritabanı arasındaki bağlantıyı nasıl sağlayabileceğinizi açıklayacaktır.


MySQL Veritabanı Oluşturma

Flask ile bir web uygulaması geliştirmek istiyorsanız, önce bir veritabanına ihtiyacınız olacaktır. Bu durumda ise çoğu kişi tarafından tercih edilen veritabanı yönetim sistemi MySQL'dir. Bu sebeple bu bölümde, Flask uygulamaları için MySQL veritabanı oluşturma işlemini adım adım ele alacağız.

İlk adım, MySQL veritabanı oluşturma işlemidir. Bunun için öncelikle MySQL veritabanı sunucusuna erişiminiz olmalıdır. Bu işlemi gerçekleştirdikten sonra ise "CREATE DATABASE" komutunu kullanarak veritabanını oluşturabilirsiniz. Veritabanı adını ve diğer gerekli seçenekleri belirledikten sonra ise işlem tamamlanacaktır.

Adım Açıklama
1 MySQL veritabanı sunucusuna erişim sağla.
2 "CREATE DATABASE veritabani_adi" komutunu kullanarak veritabanını oluştur.
3 Diğer ayarları yapılandır ve veritabanını kaydet.
  • Veritabanı adınızı mümkün olduğunca açıklayıcı bir şekilde seçin.
  • Veritabanı için kullanılacak karakter seti ve sıralama seçeneklerini belirleyin.
  • Veritabanı oluşturma işlemi genellikle sadece bir kez yapılır, sonrasında veritabanı üzerindeki işlemler "CREATE", "UPDATE", "DELETE" gibi komutlar kullanılarak gerçekleştirilir.

Veritabanı oluşturma işlemi, Flask uygulaması için gerekli olan ilk adımdır. Daha sonra, Flask uygulamanız ile MySQL veritabanı arasında bir bağlantı kurmanız gerekecek. Bu işlem için gerekli olan konfigürasyon adımlarına bir sonraki bölümde değineceğiz.


Flask-MySQL Bağlantısı Yapılandırma

Flask ve MySQL veritabanı arasında bir bağlantı kurmak için Flask-MySQL eklentisini kullanabilirsiniz. Bu bağlantıyı yapılandırmak için, MySQL veritabanı bağlantısı ayarlarını yapmanız gerekiyor. Yapılandırmak için, yapmanız gerekenler şunlardır:

  • MySQL veritabanı bağlantısı için gerekli olan kullanıcı adı ve şifrenizi belirlemek
  • MySQL veritabanı için kullanılan sunucu adını ve port numarasını belirlemek
  • Flask-MySQL eklentisini kurmak ve yapılandırmak

Bu adımları tamamladıktan sonra, Flask uygulamanız MySQL veritabanına bağlanabilir hale gelecektir. Bağlantı yapılandırmasını doğru yapmak, verilerin doğru bir şekilde aktarılması için oldukça önemlidir.

Aşağıdaki örnekte, Flask-MySQL bağlantısı nasıl yapılandırılır:

Dosya Adı Açıklama
app.py Flask uygulaması kodları
config.py MySQL veritabanı bağlantısı için yapılandırma ayarları

Yukarıdaki dosyaları oluşturduktan sonra, config.py dosyanıza MySQL veritabanı bağlantı bilgilerini ekleyin. Ayrıca, app.py dosyanızdaki Flask uygulamanızı yapılandırmak için uygun adımları takip ettiğinizden emin olun. Bağlantı yapılandırması için veritabanı adını, kullanıcı adını, şifreyi, host adını ve port numarasını doğru olarak belirttiğinizden emin olun.


MySQL Bağlantısı Oluşturma

Flask web uygulaması için MySQL veritabanına bağlanmak oldukça önemlidir. Bunun için, önce MySQL veritabanına bağlanmak gerekmektedir. MySQL veritabanı bağlantısı oluşturmak için aşağıdaki adımları takip edebilirsiniz:

  • MySQL veritabanını oluşturduktan sonra, veritabanına bağlanmak için MySQL Connector/Python modülü gereklidir. Bu modülü kurduktan sonra, bağlantı işlemi için aşağıdaki kodları kullanabilirsiniz:
import mysql.connectormydb = mysql.connector.connect(  host="localhost",  user="username",  password="password",  database="database_name")print(mydb)
  • Burada, host MySQL sunucusunun adıdır. user veritabanı kullanıcısıdır. password veritabanı kullanıcısının parolasıdır. database_name MySQL veritabanının adıdır.
  • Bağlantı gerçekleştiği taktirde, print(mydb) kodu çalıştırıldığında, veritabanına başarıyla bağlandığınızı göreceksiniz.

Bu adımları takip ederek, Flask web uygulamanız için MySQL veritabanına başarıyla bağlanabilirsiniz.


Flask Uygulamasında MySQL Bağlantısı Ayarları

Flask uygulamanızda, MySQL veritabanına bağlanmak için config dosyasını düzenlemeniz gerekir.
Config dosyasını düzenlemek için aşağıdaki adımları izleyebilirsiniz:

  • Config dosyanızı açın ve MySQL veritabanı bağlantısı için gerekli ayarları yapın.
  • Ayarları eklemek için app.config['MYSQL_HOST'], app.config['MYSQL_USER'], app.config['MYSQL_PASSWORD'] ve app.config['MYSQL_DB'] gibi anahtarlar kullanabilirsiniz.
  • 'app' objesinde mysql.init_app(app) yöntemini kullanarak MySQL bağlantısını başlatın. Bu, uygulama başlatıldığında MySQL bağlantısını yapılandıracaktır.

Yapılandırmayı tamamladıktan sonra, Flask uygulamanızın veritabanındaki verilere erişebilirsiniz.

Aşağıda bir örnek kod parçası verilmiştir:

app.config['MYSQL_HOST'] = 'localhost'app.config['MYSQL_USER'] = 'username'app.config['MYSQL_PASSWORD'] = 'password'app.config['MYSQL_DB'] = 'database_name'mysql.init_app(app)

MySQL Connector/Python Kurulumu

MySQL Connector/Python kullanarak Flask uygulamanıza MySQL veritabanına bağlanabilirsiniz. Kurulumu gerçekleştirmek için aşağıdaki adımları izleyin:

  • İlk olarak, Python'un en son sürümünü indirin ve yükleyin.
  • Cmd veya Terminali açın ve aşağıdaki komutu yazın:
    pip install mysql-connector-python
  • MySQL Connector/Python modülü yükleninceye kadar bekleyin.

MySQL Connector/Python modülü başarıyla yüklendikten sonra, MySQL veritabanına bağlanmak için Flask uygulamanızda aşağıdaki gibi bir kod kullanabilirsiniz:

Değişken Adı Açıklama
host MySQL sunucusu adresi
user MySQL kullanıcı adı
password MySQL kullanıcı şifresi
database MySQL veritabanı adı
from flask import Flaskfrom flaskext.mysql import MySQLapp = Flask(__name__)mysql = MySQL()app.config['MYSQL_DATABASE_USER'] = 'root' #MySQL kullanıcı adıapp.config['MYSQL_DATABASE_PASSWORD'] = '' #MySQL kullanıcı şifresiapp.config['MYSQL_DATABASE_DB'] = 'database_name' #MySQL veritabanı adıapp.config['MYSQL_DATABASE_HOST'] = 'localhost' #MySQL sunucusu adresimysql.init_app(app)

Yukarıdaki kodda, Flask uygulamanıza MySQL veritabanı bağlantısı kurmak için gerekli ayarları yapılandırdık. Config dosyasında yer alan kullanıcı adı, şifre, veritabanı adı ve sunucu adresi gibi değerler, kendi veritabanınıza uygun şekilde ayarlanmalıdır.


Veritabanı İşlemleri

Flask uygulamanızda MySQL veritabanına bağlandıktan sonra, veritabanı işlemleri yapmanız gerekebilir. Bu işlemler arasında veri ekleme, silme, güncelleme ve sorgulama işlemleri yer alır. Bu işlemleri gerçekleştirmek için MySQL bağlantısı kurduktan sonra, veritabanı işlemleri için üç temel adımı takip etmeniz gerekecektir.

  1. Veritabanı bağlantısı oluşturma.
  2. SQL sorguları oluşturma.
  3. Sorguları veritabanına gönderme ve işlem sonuçlarını alma.

Bu adımları doğru bir şekilde uygulayarak, Flask uygulamanız için veritabanı işlemlerini kolaylıkla gerçekleştirebilirsiniz. Ayrıca, Flask ve MySQL Connector/Python kullanarak birçok farklı veri türü ile işlem yapabilirsiniz.


MySQL Veritabanına Veri Ekleme

Flask uygulamanızda veri ekleyebilmek için öncelikle MySQL veritabanınıza aktif bir bağlantı yapılması gerekmektedir. Bir önceki bölümde bahsedildiği gibi, MySQL bağlantısı oluşturduktan sonra, Flask uygulamanızın yapılandırma dosyasına gerekli MySQL veritabanı bilgileri eklenmelidir.

Veritabanına veri ekleme işlemi için flask-mysql modülü kullanılabilir. Bu modül, Flask uygulamasında MySQL veritabanı işlemlerini kolaylaştırmak için hazırlanmıştır. Şimdi, veritabanına veri eklemek için izlenmesi gereken adımları aşağıda detaylandırdık:

  • MySQL bağlantısı oluşturmak:
Kod Açıklama
from flask_mysqldb import MySQL flask-mysqldb modülü içindeki MySQL sınıfını import edin
app.config['MYSQL_HOST'] = 'localhost' MySQL veritabanı için host adresi belirleyin
app.config['MYSQL_USER'] = 'user' MySQL veritabanı kullanıcısı belirleyin
app.config['MYSQL_PASSWORD'] = 'password' MySQL veritabanı kullanıcısı parolasını belirleyin
app.config['MYSQL_DB'] = 'veritabani_adi' Kullanılacak MySQL veritabanı adını belirleyin
mysql = MySQL(app) MySQL bağlantısını oluşturun
  • Veri ekleme işlemini gerçekleştirmek:

Bir kullanıcı tarafından gönderilen veriler, HTTP isteğinden almış olduğunuz Flask request nesnesi aracılığıyla elde edilir. Gelen isteği çözümlemek için, request.form kullanılabilir. İşte veri ekleme işlemini gerçekleştirmek için izlenmesi gereken adımlar:

Kod Açıklama
from flask_mysqldb import MySQL flask-mysqldb modülü içindeki MySQL sınıfını import edin
@app.route('/ekle', methods=['POST']) HTTP POST isteği alabilen /ekle URL'si ekleyin
def ekle(): /ekle URL'si çağrıldığında çalışacak işlevi tanımlayın
if request.method == 'POST': HTTP isteği bir POST isteği ise işleme devam edin
ad = request.form['ad'] Gelen istekten 'ad' alanını alın
soyad = request.form['soyad'] Gelen istekten 'soyad' alanını alın
cur = mysql.connection.cursor() MySQL veritabanında bir imleç oluşturun
cur.execute("INSERT INTO kisiler (ad,soyad) VALUES (%s, %s)",(ad, soyad)) MySQL veritabanına veri ekleme sorgusunu çalıştırın
mysql.connection.commit() Sorgu sonucunu kaydedin
cur.close() MySQL veritabanı imleç nesnesini kapatın
return 'Veriler Eklendi!' Ekleme işleminin başarılı olduğuna dair bir mesaj görüntüleyin

Yukarıda belirtilen adımları izlerseniz, Flask uygulamanıza veri eklemek için gerekli adımları tamamlamış olacaksınız. Bu sayede kullanıcıların verileri MySQL veritabanına kaydedilecek ve daha sonra işlenebilir hale gelecektir.


MySQL Veritabanındaki Verileri Getirme

MySQL veritabanındaki verileri getirmek için birkaç farklı yöntem bulunmaktadır. Bunlar arasında SELECT sorguları, JOIN işlemleri ve alt sorgular gibi farklı teknikler yer almaktadır. Bu yöntemlerden hangisini kullanacağınız verilerinizin yapısına ve kullanım senaryonuza bağlıdır.

SELECT sorguları, MySQL veritabanından belirli bir tablodan verileri almaya yarayan en temel yapıdır. Bu sorgular kullanılarak tek bir tablodan veya farklı tabloları birleştirerek veri alınabilir. Yapılan sorgulama sonucunda belirli bir koşulu sağlayan veriler seçilir ve geri döndürülür. JOIN işlemleri ise farklı tablolar arasındaki ilişkileri kullanarak veri alınmasını sağlayan bir yapıdır. Bu yöntem özellikle ilişkisel veritabanları kullanırken sık sık kullanılır.

Alt sorgular ise bir SELECT sorgusu içinde başka bir sorgunun kullanılmasıdır. Bu sayede daha karmaşık veri işleme işlemleri yapılabilir. Alt sorgular sadece SELECT sorgularında değil, diğer yapılar kullanılarak da kullanılabilir. Bunun yanında GROUP BY ve ORDER BY gibi sorgular da verilerin gruplanmasını ve sıralanmasını sağlar.

Kısacası, MySQL veritabanından veri almak için kullanılabilecek birçok farklı teknik vardır. Hangi yöntemi kullanacağınız veri yapısına ve kullanım senaryonuza göre değişir.