Menu

App script quản lý rủi ro cho cá nhân & doanh nghiệp với báo cáo chuẩn định dạng biểu đồ

Tự động hóa trích xuất dữ liệu Excel sang CSDL SQL Server bằng Python

Tráng Huệ Hiển 10/04/2026 20:04 242 lượt xem 1 trả lời

Chào các anh em, mình đang làm một dự án cần trích xuất dữ liệu từ nhiều file Excel khác nhau và đưa vào một CSDL SQL Server để quản lý tập trung. Ban đầu mình định làm thủ công nhưng với số lượng file lớn thì rất tốn thời gian và dễ sai sót.

Sau khi tìm hiểu, mình quyết định dùng Python để tự động hóa quá trình này. Mình đã thử nghiệm và thấy khá hiệu quả, nên muốn chia sẻ lại với mọi người, hy vọng có thể giúp ích cho ai đang gặp vấn đề tương tự.

Các bước chính mình thực hiện:

  • Sử dụng thư viện pandas để đọc dữ liệu từ file Excel.
  • Sử dụng thư viện pyodbc hoặc pymssql để kết nối và ghi dữ liệu vào SQL Server.
  • Xử lý các trường hợp dữ liệu bị thiếu, định dạng sai trước khi ghi vào CSDL.

Ví dụ đoạn code cơ bản để đọc file Excel:

import pandas as pd

excel_file = 'du_lieu_ban_hang.xlsx'
df = pd.read_excel(excel_file)

print(df.head())

Ví dụ kết nối và ghi vào SQL Server:

import pyodbc

# Thông tin kết nối SQL Server
server = 'your_server_name'
database = 'your_database_name'
username = 'your_username'
password = 'your_password'

cnxn = pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};SERVER='+server+';DATABASE='+database+';UID='+username+';PWD='+ password)
cursor = cnxn.cursor()

# Giả sử df là DataFrame đã đọc từ Excel
for index, row in df.iterrows():
    cursor.execute('INSERT INTO YourTable (Column1, Column2) VALUES (?, ?)', row.Column1, row.Column2)

cnxn.commit()
print('Dữ liệu đã được ghi thành công!')

Mình mới chỉ dừng lại ở mức cơ bản, có thể còn nhiều cách tối ưu hơn. Anh em nào có kinh nghiệm hoặc gặp khó khăn gì trong quá trình này thì cùng thảo luận nhé!

0

Hay quá bạn ơi! Mình cũng đang đau đầu vụ này đây. Mình đang dùng VBA để làm nhưng quả thực hơi đuối với việc xử lý nhiều file Excel. Dùng Python nghe có vẻ mạnh mẽ và linh hoạt hơn nhiều.

Bạn có thể chia sẻ rõ hơn về thư viện py... mà bạn đề cập không? Mình đang tò mò không biết nó hỗ trợ kết nối với SQL Server và đọc file Excel ra sao. Liệu có cần cài đặt thêm gì phức tạp không?

Cảm ơn bạn đã chia sẻ nhé!

2

Bạn cần đăng nhập để trả lời chủ đề này.

Đăng nhập Đăng ký