Để có một phần mềm ứng dụng đáp ứng được yêu cầu công việc đặt ra thì những người làm tin học phải biết phân tích thiết kế hệ thống làm việc của của chương trình để từ đó xây dựng nên mộ
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á
Khoa: Công Nghệ Thông Tin
HỌC PHẦN: CƠ SỞ DỮ LIỆU NHÓM 7
Trang 2ĐỀ TÀI
Trang 3C h ư ơ
ng 2: thiết kế
cơ sở
dữ liệu
Trang 4e r v e r
Trang 5TIEU LUAN MOI download :
skknchat123@g mail.com
Trang 6CHƯƠNG 1
Phân tích và thiết kế hệ thống
Trang 71.1 LỜI GIỚI THIỆU
Trong những năm gần đây sự phát triển của ngành IT đã đem lại những thành tựu to lớn trong việc phát triển kinh tế Những chương trình tin học ứng dụng ngày càng nhiều, rất nhiều công việc thủ công trước đây nay đã được sử ly bằng các phần mềm chuyên dụng đã giảm đáng kể công sức, nhanh chóng và chính xác Để có một phần mềm ứng dụng đáp ứng được yêu cầu công việc đặt ra thì những người làm tin học phải biết phân tích thiết kế hệ thống làm việc của của chương trình để từ đó xây dựng nên một phần mền ứng dụng quản lý chương trình đó bằng ngôn ngữ lập trình nào đó những chương trình, phần mềm ứng dụng đóng vai trò quan trọng trong lĩnh vực quản lý, nó là những công cụ hỗ trợ đắc lực và hầu như không thể thiếu nhằm đáp ứng đầy đủ nhất thuận lợi nhất những đòi hỏi của công việc quản lý nhờ những công cụ trợ giúp có sẵn, access hay SQL sever la những phần mềm như vậy nó được ứng dụng rộng rãi trong công tác quản lý không những thế nó con là một ngôn ngữ lập trình khá mạnh giúp cán bộ quản lý có thể viết những chương trình để sử sụng cơ sơ dữ liệu hay giải quyết một yêu cầu nào đó, những phần mền ứng dụng này đã phần nào trợ giúp các nhà quản lý trở lên nhanh chóng, thuận lợi, chính xác và kịp thời với những tính năng có sẵn sát với thực tế quản lý
Chương trình quản lý điểm sinh viên là một chương trình được xây dựng nhằm đáp ứng những đòi hỏi đặt ra của quá trình quản lý như nhậpthong tin sinh viên, tìm kiếm, thống kê, in báo cáo và rất nhiều công việc khác một cách nhanh chóng và thuận tiện, chính xác một cách hệ thống.Trong chương trình phần mền ứng dụng này thì chương trình nghiên cứu phân tích thiết kế hệ thống đóng vai trò rất quan trọng trong việc thiết
kế chương trình phần mền, nhìn vào bản phân tích ta có thể hiểu được người lập trình muốn làm gì, hiểu được sự hoạt động của hệ thống
Trang 8Mô hình thể liên
kết
1.2 Phân tích hệ thống kết quả
học tập sinh viên
Trang 9TIEU LUAN MOI
download : skknchat123
@gmail.com
Trang 101.2.1 THỰC TRẠNG CỦA HỆ THỐNG QUẢN LÍ ĐIỂM
Phương
pháp thủ
công
H i ệ
ợ c ủ
a c á
c c h ư ơ n
g tr ìn
n mềm ứng dụng
Trang 11Đưa ra máy in khi có
Dữ liệu đầu vào
Dữ liệu đầu ra
TIEU LUAN MOI download : skknchat123@gmail.com
Trang 121.2.2 BẢN ĐỒ PHÂN CẤP CHỨC NĂNG
Trang 131.2.3 BẢN ĐỒ LUỒNG DỮ LIỆU
Trang 141.2.4 PHÂN LOẠI CÁC THUỘC TÍNH VÀO 1
MaSV,TenS V,DiemThi
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
MaKhoaHoc,T enKhoaHoc
Kiểu thực thể sinh viên: MaSV,TenSV,MaLop,M aKhoaHoc,NgaySinh,Gi
oiTinh,DiaChi
Trang 151.2.5 MÔ HÌNH THỰC THỂ LIÊN KẾT
MonHoc
MaMH TenMH SoTiet
Trang 16CHƯƠNG 2 :
Thiết kế cơ sở dữ liệu
Trang 172.1 THIẾT KẾ CƠ SỞ DỮ LIỆU
Trang 182.2 TỪ ĐIỂN KIỂU DỮ LIỆU
TenSV MaLop MaKhoaHoc GioiTinh NgaySinh DiaChi
MaMH
Trang 192.2 TỪ ĐIỂN KIỂU DỮ LIỆU
TenMH SoTiet
MaKhoa HeDT TenLop
TenKhoaHoc
Trang 202.3 MỘT SỐ TRUY VẤN SQL
Tạo database
Trang 212.3 MỘT SỐ TRUY VẤN SQL
Trang 22TIEU LUAN MOI download : skknchat123@gmail.com
Trang 232.3 MỘT SỐ TRUY VẤN SQL TẠO KHÓA CHÍNH,
KHÓA NGOẠI VÀO CÁC BẢNG
alter table SinhVien add constraint pk_MaSV
primary key ( MaSV )
alter table MonHoc add constraint pk_MaMH primary key ( MaMH )
alter table Lop add constraint pk_MaLop Primary key ( MaLop )
alter table KhoaHoc add constraint pk_KhoaHoc
primary key ( MaKhoaHoc )
alter table SinhVien add constraint fk_Lop
foreign key ( MaLop ) references Lop ( MaLop )
alter table Diem add constraint fk_Diem1 foreign key ( MaSV ) references SinhVien ( MaSV )
alter table Diem add constraint fk_MonHoc foreign key ( MaMH ) references MonHoc ( MaMH )
alter table SinhVien add constraint fk_KH1
foreign key ( MaKhoaHoc ) references KhoaHoc
( MaKhoaHoc )
Trang 252.3MỘT SỐ TRUY VẤN SQL
Nhập Dữ Liệu Bảng
Trang 262.3 MỘT SỐ TRUY VẤN SQL
Nhập Dữ Liệu Bảng Sinh
Viên insert into SinhVien values
Trang 292.3 MỘT SỐ TRUY VẤN SQL
SỬ DỤNG CÂU RÀNG BUỘC
- Sử dụng ràng buộc check giới hạn số tiết trong bảng MonHoc phải lớn hơn
0-alter table MonHoc add constraint ck_Tiet check ( SoTiet > 0 )
Trang 300 2.3 MỘT SỐ TRUY VẤN SQL
Sử dụng ràng buộc default đặt mặc định cột ngày sinh 9-11-2000
alter table SinhVien add constraint df_SV default ( '9-11-2000' ) for NgaySinh
Trang 312.3 MỘT SỐ CÂU TRUY VẤN
nhập thêm dữ liệu vào bảng sinh viên
insert into SinhVien ( MaSV , TenSV ,
MaLop , MaKhoaHoc , GioiTinh , DiaChi )
Trang 322.3 MỘT SỐ CÂU TRUY VẤN SQL
SỬ DỤNG CÂU TRUY VẤN
- Sử dụng câu truy vấn join hiển thị tất
cả dữ liệu trong bảng Sinh Viên and bảng Lớp
select * from SinhVien a join Lop b on
a MaLop = b MaLop
Trang 332.3 MỘT SỐ CÂU TRUY VẤN SQL
- Sử dụng câu truy vấn nhiều join hiển thị tất cả dữ liệu trong bảng Môn Học, Điểm, Sinh Viên, Lớp, Môn Học
select * from MonHoc a join Diem b on
a MaMH = b MaMH join SinhVien c on b MaSV = c MaSV
join Lop d on c MaLop = d MaLop join KhoaHoc e on
c MaKhoaHoc = e MaKhoaHoc
TIEU LUAN MOI download : skknchat123@gmail.com
Trang 342.3 MỘT SỐ CÂU TRUY VẤN SQL
/* Sử dụng câu truy vấn left join để lấy các giá trị Từ bảng bên trái(SinhVien) cộng với các giá trị phù hợp của bảng bên phải(Diem)
trường hợp không có giá trị phù hợp sẽ là null */
select * from SinhVien a left join Diem b on
a MaSV = b MaSV
Trang 352.3 MỘT SỐ CÂU TRUY VẪN SQL
/* Sử dụng câu truy vấn right join để lấy các giá trị từ bảng bên phải(SinhVien) cộng với các giá trị phù hợp của bảng bên trái(MonHoc, Diem) trường hợp không
có giá trị phụ hợp sẽ là null */
select * from MonHoc a right join Diem b on a MaMH = b MaMH right join
SinhVien c on b MaSV = c MaSV
Trang 382.3 MỘT SỐ TRUY VẤN SQL
Sử dụng câu truy vấn group by để nhóm ngày sinh lại
select count ( MaSV ) as 'Có Bao Nhiêu Người' , year ( NgaySinh ) as 'Năm Sinh'
from SinhVien
group by YEAR ( NgaySinh )
Trang 402.3 MỘT SỐ TRUY VẤN SQL
Sử dụng câu truy vấn delete bảng khóa học
alter table SinhVien drop constraint fk_KH1 alter table KhoaHoc drop constraint pk_KhoaHoc
delete from KhoaHoc
Trang 412.3 MỘT SỐ TRUY VẤN SQL
Sử dụng câu truy vấn update cột Giới tính
when TenSV in( N'Nguyễn Văn A' , N'Nguyễn văn B' , N'Nguyễn văn C' , N'Nguyễn văn D' ) then 0
when TenSV in( N'Nguyễn Văn X' , N'Nguyễn văn Z' , N'Nguyễn văn S' , N'Vu Dinh A' ) then 1
end select * from SinhVien
Trang 422.3 MỘT SỐ TRUY VẤN SQL
Sử dụng câu truy vấn in truy xuất dữ liệu 200001
select * from SinhVien where MaSV in( 200001 )
Trang 432.3 MỘT SỐ CÂU TRUY VẤN SQL
SỬ DỤNG CÂU RÀNG BUỘC
Sử dụng câu truy vấn like tìm địa chỉ có tên Em
select * from SinhVien where DiaChi like ( '%Em' )