Tải bản đầy đủ (.pdf) (17 trang)

Mô hình Quản lý điểm sinh viên dùng SQL Server 2008

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.09 MB, 17 trang )

Mô hình Quản lý điểm
sinh viên dùng SQL
server 2008




Đ H K h o a H ọ c T ự N h i ê n T P H CM
K h o a Đ i ệ n T ử Viễ n T h ô n g
M á y T í n h v à H ệ Thố n g N h ú n g


4 / 4 / 2 0 1 3
1020005 - 1020145
Đề tài môn học Cơ Sở Dữ Liệu

Báo cáo đề tài môn học Cơ Sở Dữ Liệu
1020005 - 1020145
FETEL - HCMUS
1

Công tác quản lý điểm, kết quả học tập và truy vấn kết quả học tập của sinh viên
đóng vai trò hết sức quan trọng và cần thiết đối với một trường đại học, cao đẳng.
Hiện nay, cùng với quá trình hệ thống hóa và tin học hóa văn phòng, công tác tổ
chức một hệ quản trị cơ sở dữ liệu điểm thi của sinh viên lại càng cần thiết hơn lúc nào
hết.
Đáp ứng nhu cầu đó, nhóm đã xây dựng mô phỏng đơn giản một hệ quản trị cơ
sỡ dữ liệu quản lý điểm thi sinh viên dựa trên những yêu cầu thực tế, bằng ngôn ngữ
SQL thông qua phần mềm SQL Server 2008 do Microsoft cung cấp.

Sinh viên được quản lý thông qua mã số sinh viên (MASV), họ tên sinh viên


(HOTENSV), giới tính (NU – bằng 0 nếu là Nam, bằng 1 nếu là Nữ), ngày tháng năm sinh
(NGAYSINH), nơi sinh (NOISINH), nơi thường trú tại (TINH). Mỗi sinh viên có một mã
số sinh viên riêng và phân biệt với mỗi sinh viên khác, mã số sinh viên có thể dùng để
xác định lớp, khoa, khóa học và số thứ tự sinh viên. Mỗi sinh viên đều phải thuộc về
một lớp có tại trường.
Mỗi lớp đều phải trực thuộc một khoa và có mã lớp (MALOP), tên lớp (TENLOP)
riêng biệt. Mỗi lớp do một giảng viên giảng dạy.
Mỗi khoa được yêu cầu phải có một mã khoa (MAKHOA) và tên khoa
(TENKHOA) để phân biệt với các khoa khác trong trường. Mỗi khoa có thể có một hoặc
nhiều lớp, nhiều giảng viên khác nhau.
Mỗi môn học phải có một mã môn học (MAMH), tên môn học (TENMH). Mỗi môn
học cũng được quy định số đơn vị học tập (TINCHI) riêng của môn mình.
Các giảng viên giảng dạy tại trường được quản lý thông qua mã giảng viên
(MAGV), họ tên giảng viên (HOTENGV), học vị (HOCVI), chuyên ngành
(CHUYENNGANH) và mỗi giảng viên đều phải trực thuộc một khoa nào đó tại trường.
Mỗi giảng viên được phân công giảng dạy tại một lớp, mỗi giảng viên có thể dạy nhiều
lớp khác nhau.
Kết quả học tập của sinh viên được quản lý thông qua mã số sinh viên, mã số
môn học, lần thi (LANTHI) và điểm số (DIEM) của lần thi đó.
Báo cáo đề tài môn học Cơ Sở Dữ Liệu
1020005 - 1020145
FETEL - HCMUS
2

Khoa
MAKHOA
TENKHOA
MALOP
Lớp
TENLOP

NOISINH
Sinh Viên
MASV
TINH
NGAYSINH
NU
HOTENSV



Dựa theo mô tả chung, ta sẽ có tất cả 5 thuộc tính chính cho sơ đồ ER sau:



 Sinh Viên








 Lớp







 Khoa


Báo cáo đề tài môn học Cơ Sở Dữ Liệu
1020005 - 1020145
FETEL - HCMUS
3

Giảng Viên
MAGV
HOTENGV
HOCVI
CHUYENNGANH



 Giảng Viên









 Môn Học







TENMH
Môn Học
TINCHI
MAMH
Báo cáo đề tài môn học Cơ Sở Dữ Liệu
1020005 - 1020145
FETEL - HCMUS
4

Kết Quả
Sinh Viên
Môn Học


































Giảng Viên
Khoa
Khoa
Lớp
Sinh Viên
Lớp
Môn Học
Giảng Viên
Lớp
Phân Công
LANTHI
DIEM

Báo cáo đề tài môn học Cơ Sở Dữ Liệu
1020005 - 1020145
FETEL - HCMUS
5


Báo cáo đề tài môn học Cơ Sở Dữ Liệu
1020005 - 1020145
FETEL - HCMUS
6


Dựa trên cơ sở sơ đồ ER đã xây dựng trên, ta chuyển các thuộc tính thành bảng
quan hệ sau:

Sau khi thiết lập các thuộc tính và lập bảng quan hệ, chúng ta cần xác định kiểu
dữ liệu cho từng thuộc tính để có thể tạo mô hình trên phần mềm SQL Server 2008.
Kiểu dữ liệu được xác định qua bảng sau:
Thuộc tính
Kiểu dữ liệu
Giải thích
MASV
char(7)
Kiểu ký tự, có thể chứa số và chữ, không dấu. Kích thước 7 ký
tự.
HOTENSV
nvarchar(25)
Kiểu ký tự, có thể chứa số và chữ, có dấu. Kích thước 25x2=
50 ký tự.
NU

char(1)
Kiểu ký tự, có thể chứa số và chữ, không dấu. Kích thước 1 ký
tự.
NGAYSINH
date
Kiểu ngày tháng, định dạng yyyy-mm-dd. Kích thước 3 ký tự.
NOISINH
nvarchar(20)
Kiểu ký tự, có thể chứa số và chữ, có dấu. Kích thước 20x2=
40 ký tự.
Báo cáo đề tài môn học Cơ Sở Dữ Liệu
1020005 - 1020145
FETEL - HCMUS
7

TINH
nvarchar(20)
Kiểu ký tự, có thể chứa số và chữ, có dấu. Kích thước 20x2=
40 ký tự.
MALOP
char(7)
Kiểu ký tự, có thể chứa số và chữ, không dấu. Kích thước 7 ký
tự.
TENLOP
nvarchar(20)
Kiểu ký tự, có thể chứa số và chữ, có dấu. Kích thước 20x2=
40 ký tự.
MAKHOA
char(7)
Kiểu ký tự, có thể chứa số và chữ, không dấu. Kích thước 7 ký

tự.
TENKHOA
nvarchar(20)
Kiểu ký tự, có thể chứa số và chữ, có dấu. Kích thước 20x2=
40 ký tự.
MAMH
char(7)
Kiểu ký tự, có thể chứa số và chữ, không dấu. Kích thước 7 ký
tự.
TENMH
nvarchar(20)
Kiểu ký tự, có thể chứa số và chữ, có dấu. Kích thước 20x2=
40 ký tự.
TINCHI
tinyint
Kiểu số nguyên, giới hạn 0-255.
MAGV
char(7)
Kiểu ký tự, có thể chứa số và chữ, không dấu. Kích thước 7 ký
tự.
HOTENGV
nvarchar(25)
Kiểu ký tự, có thể chứa số và chữ, có dấu. Kích thước 25x2=
50 bits.
HOCVI
nvarchar(10)
Kiểu ký tự, có thể chứa số và chữ, có dấu. Kích thước 10x2=
20 ký tự
CHUYENNGANH
nvarchar(20)

Kiểu ký tự, có thể chứa số và chữ, có dấu. Kích thước 20x2=
40 ký tự.
LANTHI
tinyint
Kiểu số nguyên, giới hạn 0-255.
DIEM
numeric(4,2)
Kiểu số thập phân, gồm 4 chữ số, trong đó 2 số ở phần
nguyên, 2 số ở phần thập phân. Kích thước 3 hoặc 4 số.

Phần này sẽ tường thuật lại các bước tạo 1 hệ cơ sở dữ liệu mới trong SQL
Server 2008, cũng như cách thức tạo các Table và Column.
Khởi động phần mềm SQL Server bằng quyền MSSQLSERVER và mở SQL
Server Management Studio

Báo cáo đề tài môn học Cơ Sở Dữ Liệu
1020005 - 1020145
FETEL - HCMUS
8

Tại đây, ta chọn Connect với Server name là admin của máy chủ.

Tạo 1 hệ cơ sở dữ liệu Database của riêng mình bằng cách

Click phải chuột vào Database -> chọn New Database -> Đặt tên database rồi nhấp nút
OK để tạo.
Báo cáo đề tài môn học Cơ Sở Dữ Liệu
1020005 - 1020145
FETEL - HCMUS
9



Tạo 1 hệ truy vấn mới
Tại cửa sổ SQLQuery1.sql, ta nhập đoạn code để tạo các bảng, thuộc tính của các bản,
thiết lập kiểu dữ liệu, đặt các key…

Kiểm tra lỗi của query vừa tạo bằng nút Execute trên thanh công cụ và xem kết quả.
Báo cáo đề tài môn học Cơ Sở Dữ Liệu
1020005 - 1020145
FETEL - HCMUS
10



Với các lệnh đúng, không gặp phải lỗi, ta sẽ được các database object, có thể quan sát
tại cửa sổ Object Explorer
Báo cáo đề tài môn học Cơ Sở Dữ Liệu
1020005 - 1020145
FETEL - HCMUS
11


Lưu lại với tên DiemSV_0.sql
Kiểm tra cấu trúc các table bằng cách:
Click phải chuột vào table muốn kiểm tra -> Design -> chọn thuộc tính -> kiểm tra ở
cửa sổ Column Properties
Báo cáo đề tài môn học Cơ Sở Dữ Liệu
1020005 - 1020145
FETEL - HCMUS
12



Kiểm tra mối quan hệ của các thuộc tính qua bảng quan hệ.
Click phải chuột vào Database Diagrams -> New Database Diagrams -> Add tất cả các
database object -> Kiểm tra quan hệ các thuộc tính
Báo cáo đề tài môn học Cơ Sở Dữ Liệu
1020005 - 1020145
FETEL - HCMUS
13


Nhập dữ liệu qua lệnh Edit
Click phải chuột vào table muốn nhập dữ liệu -> chọn Edit Top 200 Rows -> Nhập dữ
liệu theo các thuộc tính ở cửa sổ vừa hiện ra.
Ví dụ: nhập dữ liệu cho table dbo.Lop, ta click phải chuột vào dòng dbo.Lop tại cửa sổ
Object Explorer, 1 cửa sổ có tên gọi DiemSV_0 – dbo.Lop được hiện ra, ta sẽ nhập dữ
liệu tại đây.

Báo cáo đề tài môn học Cơ Sở Dữ Liệu
1020005 - 1020145
FETEL - HCMUS
14

Lưu ý: dữ liệu mới nhập sẽ được SQL Server tự động lưu.
Lưu các database objects, diagrams. Hoàn tất việc tạo mô hình quản lý dữ liệu
điểm của sinh viên.

/*Code seminar “Mo hinh quan ly diem sinh vien”*/

USE DiemSV_0

set dateformat dmy

create table Lop (
MALOP char(7) NOT NULL,
TENLOP nvarchar(20),
MAKHOA char(7),
constraint PK_Lop_MALOP primary key (MALOP)
)

create table Sinhvien (
MASV char(7) NOT NULL,
HOTENSV nvarchar(25) NOT NULL,
NU char(1) NOT NULL,
NGAYSINH date NOT NULL,
NOISINH nvarchar(20),
TINH nvarchar(20),
MALOP char(7) NOT NULL,
constraint PK_Sinhvien_MASV primary key (MASV),
constraint FK_Sinhvien_MALOP foreign key (MALOP) references Lop(MALOP)
)

create table Khoa (
MAKHOA char(7) NOT NULL,
TENKHOA nvarchar(20) NOT NULL,
constraint PK_Khoa_MASV primary key (MAKHOA)
)

create table Monhoc (
MAMH char(7) NOT NULL,
TENMH nvarchar(20) NOT NULL,

TINCHI char(2) NOT NULL,
constraint PK_Monhoc_MAMH primary key (MAMH)
)

create table GVien (
MAGV char(7) NOT NULL,
HOTENGV nvarchar(25) NOT NULL,
HOCVI nvarchar(10),
CHUYENNGANH nvarchar(20),
MAKHOA char(7) NOT NULL,
constraint PK_GVien_MAGV primary key (MAGV),
constraint FK_GVien_MAKHOA foreign key (MAKHOA) references Khoa(MAKHOA)
Báo cáo đề tài môn học Cơ Sở Dữ Liệu
1020005 - 1020145
FETEL - HCMUS
15

)

create table Ketqua (
MASV char(7) NOT NULL,
MAMH char(7) NOT NULL,
LANTHI tinyint NOT NULL,
DIEM numeric(4,2) NOT NULL,
constraint PK_Ketqua_MASV_MAMH_LANTHI primary key (MASV, MAMH, LANTHI),
constraint FK_Ketqua_MASV foreign key (MASV) references Sinhvien(MASV),
constraint FK_Ketqua_MAMH foreign key (MAMH) references Monhoc(MAMH)
)

create table Phancong (

MALOP char(7) NOT NULL,
MAMH char(7) NOT NULL,
MAGV char(7) NOT NULL,
constraint FK_Phancong_MALOP foreign key (MALOP) references Lop(MALOP),
constraint FK_Phancong_MAMH foreign key (MAMH) references Monhoc(MAMH),
constraint FK_Phancong_MAGV foreign key (MAGV) references GVien(MAGV)
)
1. Với mô hình Quản lý điểm sinh viên trên phần mềm SQL Server 2008, người
dùng dễ dàng lưu trữ, truy xuất dữ liệu, chỉnh sửa cấu trúc các thuộc tính, nội
dung các đối tượng, do đó công tác quản lý điểm, kết quả học tập của sinh viên
trở nên thuận tiện, nhanh và chính xác hơn.
2. Đề tài môn học đáp ứng được nhu cầu thực tiễn ở các trường đại học, cao đẳng.
Tuy nhiên cần được chỉnh sửa 1 số chỗ để phù hợp với công tác quản lý của từng
trường.
3. Trong quá trình tìm hiểu hệ quản trị cơ sở dữ liệu bằng ngôn ngữ SQL qua phần
mềm SQL Server 2008, thành viên trong nhóm còn gặp nhiều khó khăn do thiếu
tài liệu, cũng như làm quen với tập lệnh của ngôn ngữ SQL, dẫn đến mô hình
quản lý được tạo ra chưa thật tối ưu.

o Bài giảng môn học Cơ sở dữ liệu – Ths. Lê Đức Trị
o Microsoft SQL Server 2008 for Dummies by Mike Chapple
o
o

Báo cáo đề tài môn học Cơ Sở Dữ Liệu
1020005 - 1020145
FETEL - HCMUS
16




×