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
Trang 1HỌC PHẦN: CƠ SỞ DỮ LIỆU
NHÓM 7
Khoa: Công Nghệ Thông Tin
Trang 3• 1.2 Phân tích hệ thống kết quả học tập sinh viên
1:phân tích
và thiết kế
hệ thống
• 2.1Thiết kế cơ sở dữ liệu
• 2.2 Từ điển kiểu dữ liệu
• 2.3 Một số truy vấn sql server
Chương 2:
thiết kế cơ
sở dữ liệu
Trang 4CHƯƠNG 1
Phân tích và thiết kế hệ thống
Trang 51.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ập thong 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 61.2 Phân tích hệ thống kết quả học tập sinh viên
1.2.3 Bản đồ luồng
dữ liệu
1.2.5
Mô hình thể liên kết
1.2.2 Bản đồ phân cấp chức năng
1.2.1 Thực trạng của hệ thống quản lí điểm
1.2.4 Phân loại c ác
thuộc tính v ào
1 thự
c thể
Trang 7Hiệ u q
uả n ă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
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
Trang 8Chuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vien1.2.2 BẢN ĐỒ PHÂN CẤP CHỨC NĂNG
Trang 9Chuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vien1.2.3 BẢN ĐỒ LUỒNG DỮ LIỆU
Trang 101.2.4 PHÂN LOẠI CÁC THUỘC TÍNH VÀO 1 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: MaMH
,TenMH, SoTiet
Kiểu thực thể điểm:
MaSV,TenS V,DiemThi
Kiểu thực thể lớp:MaLop, TenLop,MaK hoa,HeDT
Kiểu thực thể sinh viên: MaSV,TenSV,MaLop,M aKhoaHoc,NgaySinh,Gi oiTinh,DiaChi
Kiểu thực thể khóa học:
MaKhoaHoc,T enKhoaHoc
Trang 111.2.5 MÔ HÌNH THỰC THỂ LIÊN KẾT
Diem
MaSV MaMH
SinhVien
TenSV MaSV MaLop MaKhoaHoc GioiTinh NGaySinh DiaChi
KhoaHoc
MaKhoaHoc TenKhoaHoc
Trang 12CHƯƠNG 2 :
Thiết kế cơ sở dữ liệu
Trang 13Chuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vien2.1 THIẾT KẾ CƠ SỞ DỮ LIỆU
Trang 142.2 TỪ ĐIỂN KIỂU DỮ LIỆU
Trang 152.2 TỪ ĐIỂN KIỂU DỮ LIỆU
Trang 162.3 MỘT SỐ TRUY VẤN SQL
Tạo database • Create database QLDSinhVien
Sử dụng database • use QLDSinhVien
Trang 17BẢNG SINH
SinhVien
(
MaSV char ( 15 ) not null,
create table Diem
)
Tạo Bảng Môn Học
create table MonHoc
create table Lop
Trang 18KHÓA NGOẠI VÀO CÁC BẢNG
alter table SinhVien add constraint pk_MaSV
alter table MonHoc add constraint pk_MaMH primary
alter table Lop add constraint pk_MaLop Primary key ( MaLop )
alter table KhoaHoc add constraint pk_KhoaHoc
alter table SinhVien add constraint fk_Lop
alter table Diem add constraint fk_Diem1 foreign
alter table Diem add constraint fk_MonHoc foreign
alter table SinhVien add constraint fk_KH1
KhoaHoc ( MaKhoaHoc )
Trang 212.3 MỘT SỐ TRUY VẤN SQL
Nhập Dữ Liệu Bảng Sinh
insert into SinhVien values
'200001' , N'Nguyễn Văn A' , 'CNTT6' , 'K11' , 1 , '9-12-2002' , N'Quảng Ninh' ),
'200002' , N'Nguyễn Văn B' , 'CNTT6' , 'K11' , , '9-11-2002' , N'Quảng Nam' ),
'200003' , N'Nguyễn Văn D' , 'CNTT6' , 'K11' , 1 , '9-10-2002' , N'Đà Nẵng' ),
'200004' , N'Nguyễn Văn C' , 'CNTT6' , 'K11' , , '9-9-2002' , N'Hà Nội' ),
'200005' , N'Nguyễn Văn S' , 'CNTT6' , 'K11' , 0 , '9-8-2002' , N'Cần Thơ' ),
'200006' , N'Nguyễn Văn Z' , 'CNTT6' , 'K11' , 1 , '9-5-2002' , N'Cần Em' ),
'200007' , N'Nguyễn Văn X' , 'CNTT6' , 'K11' , , '9-4-2002' , N'Sài Gòn' )
Trang 22INSERT DỮ LIỆU VÀO
BẢNG
Trang 242.3 MỘT SỐ TRUY VẤN SQL
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
Hiển thị số tiết lớn hơn
0 SỬ DỤNG CÂU RÀNG BUỘC
Trang 252.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
Trang 262.3 MỘT SỐ CÂU TRUY VẤN
nhập thêm dữ liệu vào bảng sinh viên
MaLop , MaKhoaHoc , GioiTinh , DiaChi )
Trang 272.3 MỘT SỐ CÂU TRUY VẤN SQL
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
a MaLop = MaLop
SỬ DỤNG CÂU TRUY VẤN
Trang 282.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
join SinhVien c on b MaSV = MaSV
join Lop d on c MaLop = MaLop join KhoaHoc e on
c MaKhoaHoc = MaKhoaHoc
Trang 292.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 */
a MaSV = MaSV
Trang 302.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 */
SinhVien c on b MaSV = MaSV
Trang 332.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
Sinh'
from SinhVien group by YEAR ( NgaySinh )
Trang 352.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 362.3 MỘT SỐ TRUY VẤN SQL
Sử dụng câu truy vấn update cột Giới tính
update SinhVien set GioiTinh = case
Trang 372.3 MỘT SỐ TRUY VẤN SQL
Sử dụng câu truy vấn in truy xuất dữ liệu
Trang 382.3 MỘT SỐ CÂU TRUY VẤN SQL
Sử dụng câu truy vấn like tìm địa chỉ có tên
SỬ DỤNG CÂU RÀNG BUỘC
Trang 39Chuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vienChuong.1phan.tich.va.thiet.ke.he.thong.phan.tich.he.thong.ket.qua.hoc.tap.sinh.vien