Python'u SQL Veritabanlarına Nasıl Bağlarım?
Python'u SQL veritabanlarına bağlamak, Python betiklerinizden doğrudan veritabanlarıyla etkileşim kurmanızı sağlar. Bu yetenek, veri alma, güncelleme ve analiz gibi görevler için önemlidir. Bu makalede, SQLite, MySQL ve PostgreSQL gibi popüler kütüphaneleri kullanarak Python'u SQL veritabanlarına nasıl bağlayacağımızı inceleyeceğiz.
Ortamınızı Kurma
Python'u SQL veritabanlarına bağlamak için uygun veritabanı bağlayıcı kütüphanelerini yüklemeniz gerekir. İşte farklı veritabanları için ortak kütüphaneler:
- SQLite: SQLite desteği Python'a entegre edildiğinden ek bir kuruluma gerek yoktur.
- MySQL:
mysql-connector-python
veyaPyMySQL
kütüphanesini kullanın. - PostgreSQL:
psycopg2
kütüphanesini kullanın.
Bir SQLite Veritabanına Bağlanma
SQLite, Python'un standart kütüphanesine yerleştirilmiş hafif bir veritabanıdır. Bir SQLite veritabanına nasıl bağlanacağınız ve temel işlemleri nasıl gerçekleştireceğiniz aşağıda açıklanmıştır:
import sqlite3
# Connect to an SQLite database (or create it if it doesn't exist)
conn = sqlite3.connect('example.db')
# Create a cursor object
cursor = conn.cursor()
# Create a table
cursor.execute('''
CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
age INTEGER
)
''')
# Insert data into the table
cursor.execute('''
INSERT INTO users (name, age)
VALUES ('Alice', 30)
''')
# Commit the transaction
conn.commit()
# Query the database
cursor.execute('SELECT * FROM users')
print(cursor.fetchall()) # Output: [(1, 'Alice', 30)]
# Close the connection
conn.close()
MySQL Veritabanına Bağlanma
Bir MySQL veritabanına bağlanmak için mysql-connector-python
kütüphanesini yüklemeniz gerekir. Bunu pip
: kullanarak yükleyebilirsiniz.
pip install mysql-connector-python
İşte MySQL veritabanına bağlanma ve temel işlemleri gerçekleştirme örneği:
import mysql.connector
# Connect to a MySQL database
conn = mysql.connector.connect(
host='localhost',
user='yourusername',
password='yourpassword',
database='testdb'
)
# Create a cursor object
cursor = conn.cursor()
# Create a table
cursor.execute('''
CREATE TABLE IF NOT EXISTS employees (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
position VARCHAR(255)
)
''')
# Insert data into the table
cursor.execute('''
INSERT INTO employees (name, position)
VALUES ('Bob', 'Engineer')
''')
# Commit the transaction
conn.commit()
# Query the database
cursor.execute('SELECT * FROM employees')
print(cursor.fetchall()) # Output: [(1, 'Bob', 'Engineer')]
# Close the connection
conn.close()
PostgreSQL Veritabanına Bağlanma
Bir PostgreSQL veritabanına bağlanmak için psycopg2
kütüphanesine ihtiyacınız var. pip
: kullanarak yükleyin.
pip install psycopg2
İşte bir PostgreSQL veritabanına bağlanma ve temel işlemleri gerçekleştirme örneği:
import psycopg2
# Connect to a PostgreSQL database
conn = psycopg2.connect(
dbname='testdb',
user='yourusername',
password='yourpassword',
host='localhost'
)
# Create a cursor object
cursor = conn.cursor()
# Create a table
cursor.execute('''
CREATE TABLE IF NOT EXISTS products (
id SERIAL PRIMARY KEY,
name VARCHAR(255) NOT NULL,
price DECIMAL
)
''')
# Insert data into the table
cursor.execute('''
INSERT INTO products (name, price)
VALUES ('Laptop', 999.99)
''')
# Commit the transaction
conn.commit()
# Query the database
cursor.execute('SELECT * FROM products')
print(cursor.fetchall()) # Output: [(1, 'Laptop', 999.99)]
# Close the connection
conn.close()
Çözüm
Python'u SQL veritabanlarına bağlamak, veri odaklı herhangi bir uygulama için temel bir beceridir. sqlite3
, mysql-connector-python
ve psycopg2
gibi kütüphaneleri kullanarak çeşitli veritabanlarıyla kolayca etkileşim kurabilirsiniz. Tablo oluşturma, veri ekleme ve veritabanlarına sorgu gönderme gibi temel işlemleri nasıl gerçekleştireceğinizi anlamak, verilerinizi etkili bir şekilde yönetmenizi ve işlemenizi sağlayacaktır.