Trong thời đại công nghệ ngày nay, Python đã trở thành một ngôn ngữ lập trình đa năng và mạnh mẽ, đặc biệt là trong lĩnh vực phân tích dữ liệu. Với sự phát triển mạnh mẽ của khoa học dữ liệu và ngành Data Analyst, Python đã trở thành công cụ ưu việt, hỗ trợ chuyên gia dữ liệu trong việc xử lý, phân tích. Trong bài viết dưới đây, hãy cùng ICANTECH tìm hiểu về lập trình cơ sở dữ liệu với Python.
Lập trình cơ sở dữ liệu (Database Programming) trong Python là quá trình sử dụng ngôn ngữ lập trình Python để tương tác, thao tác và quản lý cơ sở dữ liệu. Các tác vụ trong lập trình cơ sở dữ liệu bao gồm việc kết nối đến cơ sở dữ liệu, truy vấn dữ liệu, thêm, sửa đổi và xóa dữ liệu, cũng như thực hiện các thao tác khác liên quan đến quản lý dữ liệu.
Dưới đây là một số nhiệm vụ cụ thể bạn có thể thực hiện khi lập trình cơ sở dữ liệu với Python:
pip install mysql-connector-python
import mysql.connector
# Thay đổi các thông số kết nối dựa trên cấu hình của bạn
db_config = {
'host': 'localhost',
'user': 'your_username',
'password': 'your_password',
}
# Kết nối đến MySQL
connection = mysql.connector.connect(**db_config)
cursor = connection.cursor()
# Tạo database
create_db_query = 'CREATE DATABASE IF NOT EXISTS your_database_name;'
cursor.execute(create_db_query)
# Đóng kết nối
cursor.close()
connection.close()
Trong ví dụ trên, chúng ta sử dụng câu lệnh CREATE DATABASE IF NOT EXISTS để tạo một database với tên là your_database_name. Câu lệnh này sẽ chỉ tạo database nếu nó chưa tồn tại.
Sau khi thực thi đoạn mã, bạn sẽ có một database mới trong MySQL của mình.
Ví dụ dưới đây để tạo bảng trong MySQL bằng Python:
import mysql.connector
# Thay đổi các thông số kết nối dựa trên cấu hình của bạn
db_config = {
'host': 'localhost',
'user': 'your_username',
'password': 'your_password',
'database': 'your_database_name',
}
# Kết nối đến MySQL
connection = mysql.connector.connect(**db_config)
cursor = connection.cursor()
# Tạo bảng
create_table_query = '''
CREATE TABLE IF NOT EXISTS employees (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
age INT,
position VARCHAR(255)
);
'''
cursor.execute(create_table_query)
connection.commit()
# Đóng kết nối
cursor.close()
connection.close()
Đoạn code trên được thiết kế để tạo một bảng MySQL có tên là employees với các cột có tên như id, name, age, và position. Mỗi cột có kiểu dữ liệu và ràng buộc tương ứng.
Nếu bảng employees đã tồn tại, đoạn code sử dụng câu lệnh CREATE TABLE IF NOT EXISTS, là chỉ tạo bảng nếu nó chưa tồn tại. Nếu bảng đã tồn tại, câu lệnh này sẽ không làm thay đổi cấu trúc của bảng.
Dưới đây là mô tả chi tiết về cấu trúc bảng employees:
Sau khi thực thi đoạn code, nếu không có lỗi nào xảy ra, bạn sẽ có một bảng employees mới trong cơ sở dữ liệu MySQL của mình (hoặc bảng sẽ được cập nhật nếu đã tồn tại). Bảng này sẽ phản ánh cấu trúc đã được định nghĩa trong câu lệnh CREATE TABLE.
import pyodbc
# Thay đổi các thông số kết nối dựa trên cấu hình của bạn
server = 'your_server_name'
database = 'your_database_name'
username = 'your_username'
password = 'your_password'
# Tạo chuỗi kết nối
connection_string = f'DRIVER={{ODBC Driver 17 for SQL Server}};SERVER={server};DATABASE={database};UID={username};PWD={password};'
try:
# Kết nối đến SQL Server
connection = pyodbc.connect(connection_string)
cursor = connection.cursor()
# Thực hiện một số thao tác, ví dụ: lấy dữ liệu từ một bảng
table_name = 'your_table_name'
select_query = f'SELECT * FROM {table_name};'
cursor.execute(select_query)
# Lấy tất cả các dòng từ kết quả truy vấn
rows = cursor.fetchall()
# In kết quả
for row in rows:
print(row)
except Exception as e:
print(f"Error: {e}")
finally:
# Đóng kết nối
if 'connection' in locals():
connection.close()
Lưu ý: Bạn cần thay đổi các giá trị như server, database, username, password, và your_table_name để phản ánh thông tin kết nối và bảng trong SQL Server.
Trong bài viết trên, ICANTECH đã cùng bạn tìm hiểu về lập trình cơ sở dữ liệu với Python. Hi vọng bạn có thể áp dụng các kiến thức trên làm sạch dữ liệu Python cũng như thống kê dữ liệu bằng Python hiệu quả.
Cảm ơn bạn đã đọc bài viết, nếu bạn đang quan tâm đến học lập trình thì hãy tham khảo ngay các khóa học lập trình dưới đây tại ICANTECH nhé
Nguồn ảnh: ICANTECH.