Hỗ trợ Database quản lý thi trắc nghiệm


Em chào mọi người ạ. Hiện tại em đang có bài tập lớn là làm phần mềm thi trắc nghiệm. Tuy nhiên em đang khá kẹt ở phần cơ sở dữ liệu. Yêu cầu của em như sau ạ: Với mỗi lớp TC (Lớp tín chỉ) sẽ là 1 ca thi. Mỗi khi sinh viên đang nhập thi thì hệ thống sẽ trả về ngẫu nhiên từ ngân hàng câu hỏi 1 đề thi. Mỗi 1 lớp tín chỉ sẽ không ai trùng đề với nhau. Cứ mỗi lần bấm vào thi thì hệ thống sẽ lấy ngẫu nhiên đề của môn thi đó cho riêng thí sinh đó. Thêm nữa em không biết nên dùng là Ca thi hay Phòng thi. Vì em muốn mỗi 1 lớp tc khi thi sẽ được cấp mật khẩu riêng của lần thi đó. Và sau 15 phút nếu ko thi thì sẽ khoá đề lại. M.n giúp e với ạ. E cảm ơn m.n nhiều ạ

Có vẽ hơi toang đấy. Bạn nên thiết kế database trước, đây là nơi chứa dữ liệu, còn hiện thực chương trình như thế nào thì bạn code sau.

  • Hãy tìm ra những thực thể gốc trước ví dụ SINH VIÊN(mã sv, tên sv), MÔN HỌC(mã môn, tên môn), PHONG HOC(mã phòng) … Sau đó tách các mối quan hệ many-many ra SINH VIÊN LỚP TC (mã lớpTC, mã sv, mã môn) -> CA THI(mã ca thi, mã lớpTC, mã phòng, thời gian bắt đầu, thời gian kết thúc);

  • Tui không rõ lắm relation LỚP CN, KHOA và BỘ MÔN để làm gì? Nếu thấy cần thiết thì bạn thêm vào.

  • Phần câu hỏi thì bạn nên tạo 1 bàng để lưu câu hỏi+đáp án, và một bảng để lưu đáp án của sinh viên (hoặc lưu lại kết quả/ điểm).

Mỗi khi sinh viên đang nhập thi thì hệ thống sẽ trả về ngẫu nhiên từ ngân hàng câu hỏi 1 đề thi. Mỗi 1 lớp tín chỉ sẽ không ai trùng đề với nhau. Cứ mỗi lần bấm vào thi thì hệ thống sẽ lấy ngẫu nhiên đề của môn thi đó cho riêng thí sinh đó

Vì em muốn mỗi 1 lớp tc khi thi sẽ được cấp mật khẩu riêng của lần thi đó. Và sau 15 phút nếu ko thi thì sẽ khoá đề lại

Hai vấn đề trên bạn hiện thực bằng code.

3 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?