Skip to main content

One post tagged with "Beginner"

View All Tags

SQL: Học Python cho người bắt đầu

· 3 min read

SQL Server Logo

1. Giới thiệu

Bạn có bao giờ muốn sử dụng Python để truy vấn dữ liệu từ SQL không? SQL (Structured Query Language) là ngôn ngữ quan trọng giúp chúng ta làm việc với cơ sở dữ liệu. Trong bài viết này, bạn sẽ học cách kết nối và thao tác với SQL bằng Python một cách dễ dàng.

2. Cài đặt thư viện cần thiết

Trước khi bắt đầu, hãy đảm bảo bạn đã cài đặt thư viện sqlite3 (có sẵn trong Python) hoặc sqlalchemy để kết nối với SQL Server, MySQL, hoặc PostgreSQL.

Cài đặt SQLAlchemy:

pip install sqlalchemy

Cài đặt SQLite (nếu dùng SQLite, Python đã tích hợp sẵn):

import sqlite3

3. Kết nối với cơ sở dữ liệu

3.1. Kết nối với SQLite

SQLite là hệ quản trị cơ sở dữ liệu nhỏ gọn, không cần cài đặt phức tạp.

import sqlite3

# Kết nối đến database (nếu chưa có, SQLite sẽ tự tạo file database)
conn = sqlite3.connect("database.db")
cursor = conn.cursor()

# Tạo bảng mẫu
cursor.execute("""
CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
age INTEGER
)
""")

conn.commit()
print("Database connected and table created!")

3.2. Kết nối với MySQL

Nếu bạn sử dụng MySQL, bạn cần cài đặt thư viện mysql-connector-python:

pip install mysql-connector-python

Sau đó, kết nối MySQL:

import mysql.connector

conn = mysql.connector.connect(
host="localhost",
user="root",
password="password",
database="mydatabase"
)

cursor = conn.cursor()
cursor.execute("SELECT DATABASE();")
print("Connected to:", cursor.fetchone()[0])

4. Truy vấn SQL bằng Python

4.1. Thêm dữ liệu vào bảng

Sau khi đã kết nối, bạn có thể thêm dữ liệu vào bảng bằng INSERT:

cursor.execute("INSERT INTO users (name, age) VALUES (?, ?)", ("Alice", 25))
conn.commit()
print("Data inserted!")

4.2. Lấy dữ liệu từ bảng

Dùng SELECT để lấy dữ liệu từ bảng users:

cursor.execute("SELECT * FROM users")
rows = cursor.fetchall()

for row in rows:
print(row)

4.3. Cập nhật dữ liệu

Nếu bạn muốn cập nhật tuổi của một người, dùng UPDATE:

cursor.execute("UPDATE users SET age = ? WHERE name = ?", (30, "Alice"))
conn.commit()
print("Data updated!")

4.4. Xóa dữ liệu

Dùng DELETE để xóa dữ liệu khỏi bảng:

cursor.execute("DELETE FROM users WHERE name = ?", ("Alice",))
conn.commit()
print("Data deleted!")

5. Kết hợp Pandas với SQL

Pandas là thư viện mạnh mẽ giúp bạn thao tác dữ liệu dễ dàng hơn. Bạn có thể dùng read_sql_query() để lấy dữ liệu từ SQL vào DataFrame.

import pandas as pd

df = pd.read_sql_query("SELECT * FROM users", conn)
print(df)

6. Kết luận

Python và SQL là bộ đôi hoàn hảo để làm việc với dữ liệu. Trong bài viết này, bạn đã học cách:

✅ Kết nối Python với SQL (SQLite, MySQL).
✅ Chạy các truy vấn SQL: SELECT, INSERT, UPDATE, DELETE.
✅ Kết hợp Pandas để thao tác dữ liệu dễ dàng hơn.

Hãy bắt tay vào thực hành ngay để làm chủ SQL với Python! 🚀


📌 Bạn có thể thích:

📢 Chia sẻ bài viết nếu thấy hữu ích nhé!