1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo đồ án quản lý sinh viên bằng SQL

18 45 2

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 18
Dung lượng 2,03 MB

Nội dung

Phần mềm quản lý sinh viên bằng SQL là một ứng dụng được thiết kế để quản lý thông tin về sinh viên trong một trường học, trường đại học, hoặc tổ chức giáo dục khác. SQL (Structured Query Language) là ngôn ngữ được sử dụng để tương tác với cơ sở dữ liệu, trong trường hợp này là để lưu trữ và truy xuất thông tin về sinh viên. Dưới đây là mô tả cơ bản về các thành phần và chức năng của phần mềm quản lý sinh viên sử dụng SQL: 1. Cơ sở dữ liệu (Database): Phần mềm sử dụng cơ sở dữ liệu để lưu trữ thông tin về sinh viên như tên, mã số, ngày sinh, địa chỉ, điểm số, khóa học đã đăng ký, v.v. Cơ sở dữ liệu có thể bao gồm nhiều bảng như Bảng Sinh viên, Bảng Khóa học, Bảng Điểm số, v.v. Mỗi bảng chứa thông tin cụ thể và có liên kết với nhau thông qua khóa ngoại. 2. Giao diện người dùng (User Interface): Giao diện người dùng cho phép người dùng thao tác với dữ liệu một cách dễ dàng thông qua các chức năng như thêm, sửa, xóa và truy vấn thông tin về sinh viên. Giao diện có thể được thiết kế dưới dạng ứng dụng desktop, webbased hoặc thậm chí là ứng dụng di động. 3. Chức năng quản lý sinh viên: Thêm sinh viên mới: Cho phép người dùng nhập thông tin về một sinh viên mới và lưu vào cơ sở dữ liệu. Sửa thông tin sinh viên: Cho phép người dùng cập nhật thông tin của một sinh viên đã tồn tại trong cơ sở dữ liệu. Xóa sinh viên: Cho phép người dùng xóa thông tin về một sinh viên khỏi cơ sở dữ liệu. Tìm kiếm sinh viên: Người dùng có thể tìm kiếm sinh viên dựa trên mã số, tên, khóa học, điểm số, v.v. Xem danh sách sinh viên: Hiển thị danh sách tất cả hoặc danh sách sinh viên theo tiêu chí tìm kiếm. 4. Chức năng quản lý khóa học và điểm số: Quản lý khóa học: Cho phép người dùng thêm, sửa, xóa và truy vấn thông tin về các khóa học. Quản lý điểm số: Cho phép người dùng ghi và cập nhật điểm số của sinh viên trong từng khóa học. 5. Truy vấn dữ liệu (Queries): Cho phép người dùng thực hiện các truy vấn SQL để trích xuất thông tin cụ thể từ cơ sở dữ liệu. Ví dụ: tìm tất cả sinh viên có điểm số cao hơn một ngưỡng nào đó. 6. Bảo mật: Đảm bảo rằng chỉ có người dùng có quyền truy cập mới có thể thực hiện các thao tác trên cơ sở dữ liệu. Bảo vệ dữ liệu cá nhân của sinh viên và ngăn truy cập trái phép. 7. Báo cáo và thống kê: Cho phép tạo báo cáo và thống kê về thông tin liên quan đến sinh viên, khóa học và điểm số. Phần mềm quản lý sinh viên sử dụng SQL có thể được phát triển bằng cách sử dụng các ngôn ngữ lập trình như Java, Python, C, Ruby, và kết hợp với hệ quản trị cơ sở dữ liệu như MySQL, PostgreSQL, SQLite, hoặc Microsoft SQL Server để tương tác với cơ sở dữ liệu.

Trang 1

Trang

Chương 1 Tổng quan Quản trị cơ sở dữ liệu

1.1 Ngôn ngữ lập trình SQL

1.2 Hệ quản trị SQL server

Chương 2 Phân tích và thiết kế CSDL

2.1 Phân tích 2.2 Thiết kế CSDL logic và vật lý

2.3 Thiết kế các bảng

Chương 3 Chương trình thử nghiệm

3.1 Một số kết quả truy vấn

3.2 Kết luận

Trang 2

CHƯƠNG 1: TỔNG QUAN QUẢN TRỊ CƠ SỞ DỮ LIỆU

1.1 Ngôn ngữ lập trình SQL

SQL, Ngôn ngữ truy vấn mang tính cấu trúc, là một loại  ngôn ngữ máy tính  phổ biến để tạo, sửa, và lấy  dữ liệu  từ một  hệ quản trị cơ sở dữ liệu quan

hệ (RDBMS), điển hình như Oracle, Sybase, Microsoft SQL Server, Access, Ingres,

Vào những năm 1970, SQL được phát triển bởi Raymond FF Boyce và

Donald D Chamberline tại IBM với tên SEQUEL Giai đoạn này, nó được thiết kế

để thao tác và truy xuất dữ liệu được lưu trữ trong hệ quản trị CSDL của IBM Ngôn ngữ này được triển khai theo hướng thương mại vào tháng 6 năm 1979 bởi

Relational Software cho các máy tính VAX.

SQL phát triển vượt xa so với mục đích ban đầu là để phục vụ các hệ quản trị cơ sở dữ liệu đối tượng-quan hệ Nó được thừa nhận là tiêu chuẩn

của  ANSI  (American National Standards Institute) vào năm 1986

và  ISO  (International Organization for Standardization) năm 1987. 

Ưu điểm của ngôn ngữ lập trình SQL:

 Tốc độ cao: Bằng việc sử dụng các truy vấn SQL, người dùng có thể

truy xuất nhanh chóng một lượng lớn hồ sơ từ các cơ sở dữ liệu.

 Không cần code: Rất dễ dàng để quản lý các hệ thống cơ sở dữ liệu

bằng việc sử dụng SQL chuẩn mà không cần phải viết bất cứ dòng code nào.

 Tiêu chuẩn được quy định rõ ràng: SQL sử dụng hai tiêu chuẩn ISO

và ANSI, trong khi với các non-SQL database không có tiêu chuẩn nào được tuân thủ.

 Tính di động cao: SQL có thể được sử dụng trong chương trình trong PCs, servers, laptops, và thậm chí cả mobile phones.

 Ngôn ngữ tương tác: Language này có thể được sử dụng để giao tiếp với cơ sở dữ liệu và nhận câu trả lời cho các câu hỏi phức tạp trong vài giây.

Multiple data views: Với sự trợ giúp của ngôn ngữ SQL, người dùng

có thể tạo các hiển thị khác nhau về cấu trúc cơ sở dữ liệu và cơ sở dữ liệu cho những người dùng khác nhau.

Nhược điểm của ngôn ngữ lập trình SQL:

 Chi phí: Chi phí vẫn hành của một số phiên bản SQL khá cao, đó là lí

do vì sao một số lập trình viên không thể sử dụng SQL được.

 Giao diện phức tạp: Giao diện của SQL khá là phức tạp gây bất lợi

cho người dùng trong việc truy cập và quản lý.

Trang 3

 Không được toàn quyền kiểm soát: Các lập trình viên sử dụng SQL

không có toàn quyền kiểm soát cơ sở dữ liệu do các quy tắc nghiệp vụ

bị ẩn.

Chức năng cơ bản của SQL:

 Hỗ trợ người dùng trong mô tả dữ liệu

 Hỗ trợ truy cập dữ liệu tại các RDSM

 Giúp xác định, thao tác các dữ liệu tại CSDL.

 Cho phép nhúng ngôn ngữ khác, miễn sao nó sử dụng thư viện, trình biên dịch và cả các mô-đun SQL.

 Hỗ trợ người sử dụng tạo, thả CSDL và bảng.

 Hỗ trợ tạo chế độ view, tính năng, thủ tục lưu trữ tại CSDL.

 Người dùng có thể thiết lập quyền ở bảng, thủ tục, view.

1.2 Hệ quản trị cơ sở dữ liệu SQL server

Hệ quản trị cơ sở dữ liệu (Database Management System) chính là một gói

phần mềm được dùng để xác định, thao tác cũng như truy xuất và quản lý dữ liệu.

Hệ quản trị thường sẽ thao tác với các dữ liệu của chính DBMS Ví dụ như: định dạng dữ liệu, tên của file, cấu trúc của bản record và cả cấu trúc của file Ngoài ra,

hệ quản trị cũng sẽ giúp xác định những quy tắc nhằm xác thực cũng như thao tác với những dữ liệu này.

SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ (Relational Database

Management System (RDBMS) ) sử dụng câu lệnh SQL (Transact-SQL) để trao đổi dữ liệu giữa máy Client và máy cài SQL Server Một RDBMS bao gồm databases, database engine và các ứng dụng dùng để quản lý dữ liệu và các bộ phận khác nhau trong RDBMS.

SQL Server được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu rất lớn

(Very Large Database Environment) lên đến Tera-Byte và có thể phục vụ cùng lúc cho hàng ngàn user SQL Server có thể kết hợp “ăn ý” với các server khác như Microsoft Internet Information Server (IIS), E-Commerce Server, Proxy Server,…

Các thành phần cơ bản trong SQL Server:

 Database Engine: là một engine có khả năng chứa dữ liệu ở các quy

mô dưới dạng support và table, đồng thời có khả năng tự điều chỉnh ví

Trang 4

dụ: trả lại tài nguyên cho hệ điều hành khi một user log off và sử dụng thêm các tài nguyên của máy khi cần.

 Integration Services: là tập hợp các đối tượng lập trình và các công

cụ đồ họa cho việc sao chép, di chuyển và chuyển đổi dữ liệu, định dạng dữ liệu trước khi lưu vào database. 

 Analysis Services: giúp phân tích dữ liệu một cách hiệu quả và dễ

dàng bằng cách dùng kỹ thuật khai thác dữ liệu – datamining và khái niệm hình khối nhiều chiều – multi dimendion cubes.

 Notification Services: dịch vụ thông báo này là nền tảng cho sự phát

triển và triển khai các ứng dụng soạn và gửi thông báo, có chức năng gửi thông báo theo dịch thời đến hàng ngàn người dăng ký sử dụng trên nhiều loại thiết bị khác nhau.

 Reporting  Services: công cụ tạo, quản lý và triển khai báo cáo bao

gồm: server và client Nó còn là nền tảng cho việc phát triển và xây dựng các ứng dụng báo cáo.

 Full Text Search Service: thành phần đặc biệt trong việc truy vấn và

đánh chỉ mục dữ liệu văn bản không cấu trúc được lưu trữ trong các

cơ sở dữ liệu SQL Server.

 Service Broker: môi trường lập trình cho việc tạo ra các ứng dụng

trong việc nhảy qua các Instance.

1.2       PHÂN TÍCH HỆ THỐNG QUẢN LÝ KẾT QUẢ HỌC TẬP SINH VIÊN 1.2.1       Thực trạng của hệ thống quản lý điểm (qld)

Điểm thi được quản lý dựa trên phương pháp thủ công.

      + Điểm thi của từng sinh viên được ghi chép và lưu dữ bằng sổ sách.

      + Quản lý điểm, thông tin về sinh viên quản lý bằng việc ghi chép và   

     kiểm kê

      + Quản lý nhập điểm, xuất điểm bằng cách ghi chép thủ công, sinh viên

    muốn xem điểm bằng việc đối chiếu thủ công

      + Chưa có cơ chế kiểm tra bạn đọc

Nhược điểm:

    + Tốn rất nhiều thời gian và công sức

    + Dễ nhầm lẫn, sai sót

    + Khó kiểm tra quản lý

    + Hiệu quả năng suất thấp

Do đó hệ thống quản lý kết quả thi cần phải sửa đổi lại cơ cấu quản lý hoạt động nhằm nâng cao hiệu quả để dễ quản lý đến từng học sinh

Giải pháp:

  + Cần tổ chức lại cơ cấu quản lý, thay thế một số công đoạn thủ công bằng “tin học hoá hoá” nhờ có   sự trợ của các chương trình, phần mềm ứng dụng

Trang 5

  + Việc nhập điểm, tìm kiếm, sửa chữa, báo cáo, thống kê cần được xử lý nhờ máy tính   + Đưa ra máy in khi có yêu cầu

Các dữ liệu đầu vào:

 Dữ liệu đầu vào là nguồn thông tin được đưa vào máy tính để xử lý, bao gồm các thông tin sau :

  + thông tin sinh viên, thông tin về điểm

  + Các yêu cầu tìm kiếm

Dữ liệu đầu ra:

 Dữ liệu đầu ra là các thông tin sau khi xử lý bao gồm các thông tin sau:

  + Bảng danh sách điểm

  + Bảng thống kê báo cáo

Từ thực trạng trên, chúng ta có sơ đồ luân chuyển thông tin:

Sơ đồ luân chuyển thông tin của hệ thống quản lý học tập sinh viên

Sau khi lưu hồ sơ sinh viên với các môn học và có điểm các môn thi, phòng giáo vụ tiến hành vào điểm của từng môn học

Sinh viên sẽ đương nhiên bị điểm 0 đối với mỗi môn thi nếu:

+ Không dự thi, xin hoãn thi. 

+ Không thuộc diện được học hai trường, được nghỉ học một số môn mà nghỉ quá 25% số giờ của học phần (dù có phép hay không có phép)

Điểm thi sẽ tính theo thang điểm 10. 

Điểm tổng kết sẽ được tính bằng điểm các môn nhân với số đơn vị học trình tương ứng

và chia cho tổng số đơn vị học trình

Sinh viên có thể dự thi các học phần tích để có điểm cao hơn vào những kỳ thi chính thức tiếp theo.  Sau khi học lại hay thi lại hoặc thi nâng điểm, điểm tổng kết mới sẽ được tính theo điểm cao nhất của từng môn

Sinh viên phải học lại những môn có điểm thi lại < 5 và thi lại những môn có điểm thi lần đầu < 5 vào thời điểm sớm nhất của nhà trường

Nếu phải học lại một học phần làm cơ sở cho các học phần tiếp theo sau, sinh viên không

được học và dự thi các học phần tiếp sau nếu nhà trường không cho phép.   

Sau mỗi học kỳ các khoa sẽ tiến hành xét khen thưởng/ kỷ luật, xếp loại cho sinh viên. 

    - Xếp loại học tập:

9 00 -> 10 00 xếp loại Xuất sắc

8 00 -> 8 99 xếp loại Giỏi

7 00 -> 7 99 xếp loại Khá

Trang 6

6 00 -> 6 99 xếp loại Trung bình - Khá

5 00 -> 5 99 xếp loại Trung bình

   < 5  xếp loại Yếu

-      Xét loại học bổng:

   + Loại 1: Đạt điểm trung bình từ 8 00 trở lên và không có môn nào có điểm dưới 7    + Loại 2: Đạt điểm trung bình từ 7 00 -> 7 99 và không có môn nào có điểm dưới 6. 

1.2.2       Biểu đồ phân cấp chức năng:

Ý nghĩa của từng chức năng trong hệ thống:

§   Quản lý môn học

-     Có các chức năng thêm, sửa,xoá các môn học theo yêu cầu của nhà quản lý

-     Cung cấp thông tin  về các môn  học trong mỗi kỳ học cho nhà quản lý, giáo viên và sinh viên khi có yêu cầu

§     Quản lý sinh viên

-     Có các chức năng thêm, sửa, xoá thông tin sinh viên theo yêu cầu của nhà quản lý

-    Cung cấp thông tin về  sinh viên cho nhà quản lý,giáo viên và sinh viên khi có yêu cầu

§     Quản lý điểm

-    Có chức năng cập nhật điểm cho sinh viên sau mỗi kỳ học

-    Thực hiện phúc khảo điểm cho sinh viên khi sinh viên yêu cầu

-    Báo cáo, thống kê  điểm của sinh viên cho nhà quản lý, giáo viên và sinh viên khi có yêu cầu

§     Thống kê,báo cáo

-     Thống kê danh sách sinh viên đỗ lần 1, lần 2, tỷ lệ sinh viên đỗ lần 1, lần 2 theo từng lớp học, môn học sau mỗi kỳ học

-     Thống kê danh sách sinh viên trượt lần 1, lần 2(học lại),tỷ lệ sinh viên trượt lần 1, lần

2 theo từng lớp học, môn học sau mỗi kỳ học

-     Thống kê danh sách  sinh viên bị lưu ban, tỷ lệ sinh viên bị lưu ban sau mỗi năm học

-     Thống kê danh sách sinh viên đạt học bổng, tỷ lệ sinh viên đạt học bổng sau mỗi kỳ học

-     Trong quá trình thống kê sẽ sử dụng chức năng tính điểm của quản lý điểm

1.2.3       Biểu đồ luồng dữ liệu:

Trang 7

1: Sơ đồ luồng dữ liệu mức khung cảnh

1.2.4       Phân loại các thuộc tính vào một tập thực thể

  Kiểu thực thể liên kết là nguồn thông tin cần thiết cho hệ thống ,các kiểu thực thể có thể xuất  hiện ở các tác nhân ngoài , các luồng thông tin nội bộ hoặc các kho dữ liệu

Kiểu thực thể Môn Học gồm MaMH, TenMH, So Trinh

Kiểu Thực Thể Điểm: MaSV, MaMH, Hoc Ky,Diem lan 1, Diem lan 2, Hoc lai

Kiểu thực thể HeDT: Ma HDT, Ten HDT

Kiểu thực thể Lớp gồm Ma Lop, Ten Lop,Ma Khoa, Ma HDT, Ma Khoa Hoc

Kiểu thực thể Sinh Viên gồm MaSV, TenSV, Ngày Sinh, giới tính, Que quan, ma lop Kiểu thực thể Học Kỳ: Ma HK, Ten HK

Kiểu thực thể Khóa Học: Ma Khoa Hoc, Ten Khoa Hoc

Kiểu thực thể Khoa gồm: Ma Khoa,Ten Khoa, Dia Chi, Dien Thoai

·   Danh sách các thuộc tính: MaHDT, TenHDT, MaKhoa, TenKhoa, MaKhoaHoc, TenKhoaHoc, MaLop, TenLop, MaSV, TenSV, MaMH, TenMH, MaHocKy, TenHocKy, Diem

·   Danh sách các thuộc tính lặp: MaSV, TenSV, Diem

·   Danh sách các phụ thuộc hàm:

Trang 8

       MaSV → TenSV, MaLop.

       MaLop → TenLop, MaKhoa, MaKhoaHoc, MaHDT

               MaSV, MaMH→ Diem

       MaKhoa → TenKhoa

       MaKhoaHoc → TenKhoaHoc

       MaHDT → TenHDT

       MaMH → TenMH

       

Các Bước chuẩn hóa

MaLop

TenLop

MaHDT

TenHDT

MaKhoaHoc

TenKhoaHoc

MaKhoa

TenKhoa

MaMH

TenMH

* MaSV

* TenSV

*  Diem

MaLop TenLop MaHDT TenHDT MaKhoaHoc TenKhoaHoc MaKhoa TenKhoa MaMH TenMH

MaLop TenLop MaHDT TenHDT MaKhoaHoc TenKhoaHoc MaKhoa TenKhoa MaMH TenMH

MaLop TenLop MaHDT MaKhoa MaKhoaHoc

Lop

MaHDT

MaKhoa

MaKhoaHoc

MaSV TenSV MaLop

SinhVien MaMH

Trang 9

MaSV TenSV MaMH DiemLan1 DiemLan2

MaSV

DiemLan1 DiemLan2

Diem

MaSV MaMH DiemLan1 DiemLan2

Sử dụng thuật toán phân rã để chuẩn hóa thành dạng 3NF như sau:

Ta có lược đồ quan hệ R(ABCDEFGHIJKLM) có các phụ thuộc hàm là F(K→AL, A→BCEF, IK→M, G→H, E→F, C→D, I→J)

B1: Tìm phủ tối tiểu của F

F= { K→AL, A→BCEF, IK→M, G→H, E→F, C→D, I→J}

Đặt G=F, Tách các phụ thuộc hàm của G có vế phải chỉ chứa 1 thuộc tính

G={ K→A, K→L, A→B, A→C, A→E, A→F, IK→M, G→H, E→F, C→D, I→J }

G là tối tiểu

B2: Tách thành các lược đồ con

F=G

Xét K→A, K→L có 2 phụ thuộc hàm vế trái bằng K ta có R1(KAL) loại K→A, K→L khỏi F

Xét  A→B, A→C, A→E, A→F có 2 phụ thuộc hàm vế trái bằng A ta có R2(ABCEF) loại A→B, A→C, A→E, A→F khỏi F

Xét IK→M có 1 phụ thuộc hàm vế trái bằng IK ta có R3(IKM) loại IK→M khỏi F

Tương tự xét đến khi F=Æ dừng thuật toán

Kết luận: Lược đồ R(ABCDEFGHIJKLM) được tách thành 7 lược đồ con chuẩn 3NF như sau:

R1(KAL) khóa K

R2(ABCEF) khóa A

R3(IKM) khóa IK

R4( GH) khóa G

R5(EF) khóa E

R6(CD) khóa C

R7(IJ) khóa I

 

Chương 2: THIẾT KẾ CƠ SỞ DỮ LIỆU 2.1.      Thiết kế cơ sở dữ liệu:

 

Trang 10

2.2.      Từ điển dữ liệu

Thuộc

tính       

      

Tên bảng

MONHOC

DIEM

HEDT

LOP

Trang 11

MaKhoaHoc char 5 Mã khóa học SINHVIEN

 

2.3.      Một số truy vấn SQL

 

Dưới là ảnh select form 1 số bảng nhập dữ liệu 1 số bảng khóa như

-Khóa học

-Hệ Đào Tạo

-Khoa

-Lớp

-Sinh Viên

- Môn học

-Điểm

Trang 12

Trên là 1 trong các lệnh để thực hiện truy vấn bảng dữ liệu nhập vào

Trang 13

Trigger không cho xóa môn học

Thêm dữ liệu bảng lớp

Sửa dữ liệu và xóa dữ liệu bảng lớp

Trang 14

Bảng thêm môn học gồm thêm sửa,xóa dữ liệu

Trang 15

Bảng thêm dữ liệu sinh viên

Bảng xóa dữ liệu sinh viên

Bảng dữ liệu thêm khóa học

Trang 16

Bảng dữ liệu sửa xóa thêm khóa học

Bảng thêm hệ đào tạo

Trang 17

Bảng xóa hệ đào tạo và thêm dữ liệu sửa dữ liệu

Các bảng của em vẫn gộp 1 số chức năng vào trong 1 bảng cho ngắn gọn ạ

Em gửi soruce code vào trong chương trình mong thầy cô đọc ạ

Trang 18

Kết luận:

Em cảm ơn thầy cô vào các bạn đã theo dõi chương trình quản lý sinh viên bằng cơ sở dư liệu bằng MSSQL Nếu còn thiếu sót gì mong thầy cô châm chước cho em ạ, em cảm ơn ạ

Tài liệu tham khảo: Ở 1 số website trên internet

-Howkteam

-W3Shoocl

v.v

Ngày đăng: 21/08/2023, 23:39

TỪ KHÓA LIÊN QUAN

w