CÔNG CỤ
MODULES
THAM KHẢO
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
Dự án mới của mình là gamehow.net, mời anh em ghé thăm và góp ý ạ.

Thông báo: Download 4 khóa học Python từ cơ bản đến nâng cao tại đây.

Ứng dụng quản lý sinh viên với MySQL và Python cơ bản

Trong bài này mình sẽ làm một bài tập, đó là xây dựng ứng dụng quản lý sinh viên với MySQL và Python cơ bản, qua đó bạn sẽ biết cách xử lý truy vấn CSDL MySQL bằng Python.

Trước khi đọc bài này thì bạn phải xem bài xử lý MySQL trong Python nhé, trong bài đó mình đã hướng dẫn các thao tác như: Select, Insert, Update, Delete bằng Python rất chi tiết.

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Đương nhiên, bạn cũng phải biết một chút về MySQL thì mới làm được ứng dụng này. Hãy tham khảo series MySQL căn bản nếu bạn chưa biết gì về nó nhé.

1. Tạo CSDL quản lý sinh viên

Trước tiên cần chuẩn bị một số dữ liệu để chúng ta thực hành trên đó. Mình sẽ tạo một cơ sở dữ liệu tên là QLSV, sau đó tạo một table tên là STUDENTS nhé.

CREATE DATABASE QLSV;
USE QLSV;
CREATE TABLE STUDENTS(
	ID INT(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
	FULLNAME VARCHAR(255) NOT NULL
);

Tiếp theo hãy chạy lệnh sau để thêm một vai dòng dữ liệu nhé.

INSERT INTO students(`fullname`)
VALUES 
	('Nguyen Van Cuong'),
	('Dang Van Chuong'),
	('Pham Quoc Khanh')

2. Xây dựng module quản lý sinh viên bằng Python

Ta sẽ tạo một module tên là Students và code các hành động như: Hiển thị danh sách, thêm, xóa và sửa sinh viên.

from mysql.connector import MySQLConnection, Error

class Students:

    conn = None

    def __init__(self):
        """Hàm khởi tạo constructor"""
        self.connect()

    def __del__(self):
        """Hàm hủy destructor"""
        if self.conn != None:
            self.conn.close()

    def connect(self):
        """ Kết nối MySQL bằng module MySQLConnection """
        db_config = {
            'host': 'localhost',
            'database': 'qlsv',
            'user': 'root',
            'password': ''
        }

        conn = None

        try:
            conn = MySQLConnection(**db_config)
            if conn.is_connected() == False:
                raise Error

        except Error as error:
            print(error)

        self.conn = conn

    def show(self):
        """Hàm hiển thị danh sách sinh viên"""
        try:
            cursor = self.conn.cursor()
            cursor.execute("SELECT * FROM students")
            row = cursor.fetchone()

            while row is not None:
                print(row)
                row = cursor.fetchone()

        except Error as e:
            print(e)

        finally:
            cursor.close()

    def insert(self, fullname):
        """Hàm thêm sinh viên"""
        query = "INSERT INTO students(fullname) VALUES(%s)"
        args = (fullname,)

        try:
            cursor = self.conn.cursor()
            cursor.execute(query, args)

            if cursor.lastrowid:
                print('Insert thành công!')
            else:
                print('Insert thất bại!')

            self.conn.commit()
            self.show()

        except Error as error:
            print(error)

        finally:
            cursor.close()


    def update(self, id, name):
        """Hàm update sinh viên"""
        query = """ UPDATE students
                    SET fullname = %s
                    WHERE id = %s """
        data = (name, id)

        try:
            cursor = self.conn.cursor()
            cursor.execute(query, data)
            self.conn.commit()
            self.show()

        except Error as error:
            print(error)

        finally:
            cursor.close()

    def delete(self, id):
        """Hàm xóa sinh viên"""
        query = "DELETE FROM students WHERE id = %s"
        try:
            cursor = self.conn.cursor()
            cursor.execute(query, (id,))
            self.conn.commit()
            self.show()

        except Error as error:
            print(error)

        finally:
            cursor.close()

3. Chương trình chính chạy module quản lý sinh viên Python

Công việc bây giờ thì khá đơn giản, bạn chỉ cần gọi đến module mà ta đã làm ở phần 2.

# HỌC PYTHON TẠI FREETUTS.NET
# CHƯƠNG TRÌNH QUẢN LÝ SINH VIÊN BẰNG MYSQL & PYTHON
# AUTHOR: CƯỜNG NGUYỄN

import students as st

print("CHƯƠNG TRÌNH QUẢN LÝ SINH VIÊN")
action = 1

while action != 0:
    print("------------------------")
    print("|- Nhập 1: Danh sách ---")
    print("|- Nhập 2: Thêm      ---")
    print("|- Nhập 3: Xóa       ---")
    print("|- Nhập 4: Sửa       ---")
    print("|- Nhập 0: Thoát     ---")
    print("------------------------")

    action = int(input())
    s = st.Students()

    if action == 1:
        print('DANH SÁCH SINH VIÊN')
        s.show()
    elif action == 2:
        print('THÊM SINH VIÊN')
        print("Nhập Tên sinh viên: ", end='')
        name = input()
        s.insert(name)
    elif action == 3:
        print('XÓA SINH VIÊN')
        print("Nhập ID sinh viên cần xóa: ", end='')
        id = input()
        s.delete(id)
    elif action == 4:
        print('CẬP NHẬT SINH VIÊN')
        print("Nhập ID sinh viên cần cập nhật: ", end='')
        id = input()
        print("Nhập tên sinh viên mới: ", end="")
        name = input()
        s.update(id, name)
    else:
        break

Chạy chương trình lên thì bạn sẽ thấy giao diện như sau:

quan ly sinh vien luu db python JPG

Lời kết: Như vậy là mình đã hướng dẫn xong cách sử dụng Python để viết chương trình quản lý sinh viên có lưu trữ database MySQL. Chúc bạn thành công nhé.

Cùng chuyên mục:

Hàm Dictionary clear() trong Python

Hàm Dictionary clear() trong Python

Cách dùng hàm Dictionary clear() trong Python

Hàm Dictionary copy() trong Python

Hàm Dictionary copy() trong Python

Cách dùng hàm Dictionary copy() trong Python

Hàm Dictionary fromkeys() trong Python

Hàm Dictionary fromkeys() trong Python

Cách dùng hàm Dictionary fromkeys() trong Python

Hàm Dictionary get() trong Python

Hàm Dictionary get() trong Python

Cách dùng hàm Dictionary get() trong Python

Hàm Dictionary items() trong Python

Hàm Dictionary items() trong Python

Cách dùng hàm Dictionary items() trong Python

Hàm Dictionary keys() trong Python

Hàm Dictionary keys() trong Python

Cách dùng hàm Dictionary keys() trong Python

Hàm List append() trong Python

Hàm List append() trong Python

Cách dùng hàm List append() trong Python

Hàm List extend() trong Python

Hàm List extend() trong Python

Cách dùng hàm List extend() trong Python

Hàm List insert() trong Python

Hàm List insert() trong Python

Cách dùng hàm List insert() trong Python

Hàm List remove() trong Python

Hàm List remove() trong Python

Cách dùng hàm List remove() trong Python

Hàm List index() trong Python

Hàm List index() trong Python

Cách dùng hàm List index() trong Python

Hàm List count() trong Python

Hàm List count() trong Python

Cách dùng hàm List count() trong Python

Hàm List pop() trong Python

Hàm List pop() trong Python

Cách dùng hàm List pop() trong Python

Hàm List reverse() trong Python

Hàm List reverse() trong Python

Cách dùng hàm List reverse() trong Python

Hàm List sort() trong Python

Hàm List sort() trong Python

Cách dùng hàm List sort() trong Python

Hàm List copy() trong Python

Hàm List copy() trong Python

Cách dùng hàm List copy() trong Python

Hàm List clear() trong Python

Hàm List clear() trong Python

Cách dùng hàm List clear() trong Python

Hàm Set remove() trong Python

Hàm Set remove() trong Python

Cách dùng hàm Set remove() trong Python

Hàm Set add() trong Python

Hàm Set add() trong Python

Cách dùng hàm Set add() trong Python

Hàm Set copy() trong Python

Hàm Set copy() trong Python

Cách dùng hàm Set copy() trong Python

Top