I. Giới thiệu
SQL Server sử dụng cơ sở dữ liệu quan hệ có dữ liệu bên trong được tổ chức thành các bảng, các bảng được tổ chức bằng cách nhóm dữ liệu theo cùng chủ đề và có chứa các cột và các hàng thông tin. Sau đó các bảng này lại liên hệ với nhau bởi bộ Database Engine khi có yêu cầu.
II. Các kiểu dữ liệu
Loại Kiểu dữ liệu Chú giải
String char(n), varchar Lưu trữ các chuỗi ký tự
Binary binary(n), varbinary Lưu trữ thông tin nhị phân trong cặp 2 bytes
Integer int, smallint, tinyint Lưu trữ các giá trị nguyên Approximate
Numeric float, real
Lưu trữ các số gần đúng Exact Numeric decimal, numeric Lưu trữ các số chính xác Special
bit, text, image
Lưu trữ bit, văn bản nhiều hơn 8000 bytes, hay dữ liệu ảnh
Date and time datetime, smalldatetime
Lưu trữ ngày và giờ Money money, smallmoney Lưu trữ các giá trị tiền tệ Auto-incrementing
datatypes dentity, timestamp
Lưu trữ các giá trị cho phép sẽ tăng tự động hay được gán trị bởi SQL server.
Synonyms Ánh xạ kiểu dữ liệu ANSI thành kiểu
dữ liệu SQL server
User-defined Tạo kiểu dữ liệu riêng để lưu trữ thông tin
1. Câu lệnh SELECT
- Dùng để truy vấn các hàng và cột của bảng trong cơ sở dữ liệu. - Có 3 thành phần trong câu lệnh SELECT: SELECT, FORM và WHERE.
- Cú pháp câu lệnh SELECT đơn giản: SELECT <column_list>
FROM <table_list>
WHERE <search_criteria>
Phần SELECT xác định cột muốn khôi phục, phần FORM xác định bảng có cột được khôi phục và phần WHERE giới hạn hàng được khôi phục.
- Cú pháp đầy đủ của câu lệnh SELECT là:
SELECT {ALL | DISTINCT}{TOP n {PERCENT}{WITH TIES}}
{ INTO new_table }
{ FROM <table_sources> } { WHERE <search_condition>}
[ GROUP BY [ALL] group_by_expression [,…n] [ WITH {CUBE | ROLLUP}]
[HAVING <search_condition> ]
[ORDER BY {column_name [ASC | DESC ]} […n] ] [COMPUTE (expression)]
Mệnh đề GROUP BY sẽ nhóm dữ liệu tổng gặp trong mệnh đề
WHERE để trả ra những dòng đơn. Mệnh đề GROUP BY ALL trả về tất cả
các nhóm, bao gồm cả những nhóm không đáp ứng tiêu chuẩn ở mệnh đề
Mệnh đề HAVING đặt tiêu chuẩn xác định những dòng nào được trả ra bởi mệnh đề GROUP BY.
Các mệnh đề GROUP BY và HAVING cần thoả mãn những yêu cầu nhất định để phù hợp với tiêu chuẩn ANSI. Một trong những yêu cầu này là mệnh đề GROUP BY phải chứa tất cả các cột không kết hợp trong SELECT
column_list. Yêu cầu khác là những cột tiêu chuẩn trong mệnh đề HAVING
chỉ trả về một giá trị.
Mệnh đề ORDER BY dùng để sắp xếp dữ liệu, mệnh đề này không dùng ở cột có kiểu dữ liệu text (văn bản) hoặc image (hình ảnh).
Mệnh đề COMPUTE trả về những dòng chi tiết và dòng tổng số. 2. Câu lệnh INSERT
- Dùng để thêm một hàng vào một bảng tại một thời điểm. - Cú pháp:
INSERT [INTO] {<table_or_view>} {column_list}
VALUES {select_statement | execute_statement} 3. Câu lệnh UPDATE
- Dùng để thay đổi giá trị của các cột trong hàng - Cú pháp:
UPDATE
{table_name | view_name} SET
Column_name1={expression1 | NULL | (select_statement)} [, column-name2=…]
[WHERE search_conditions]
Mệnh đề SET cho chỉ định những cột được cập nhật. 4. Câu lệnh DELETE
- Cho phép xóa một hay nhiều hàng dữ liệu từ một bảng.
- Cú pháp:
DELETE [ FORM ] { table_name | view_name} [ WHERE clause ]
Phần 3
PHÂN TÍCH THIẾT KẾ HỆ THỐNG Chương 1
KHẢO SÁT HỆ THỐNG
I. Hồ sơ khảo sát chi tiết
1. Mô tả hệ thống 1.1 Nhiệm vụ cơ bản
Nhiệm vụ cơ bản của hệ thống quản lý trang web môn học là quản lý thông tin, phương pháp giảng dạy cho môn học. Cung cấp các thông tin chi tiết về các học phần, đề cương học phần, giảng viên phụ trách... đáp ứng kịp thời nhu cầu của sinh viên, tạo thuận lợi cho quá trình quản lý và giảng dạy.
1.2 Cơ cấu tổ chức và sự phân công trách nhiệm
Hệ thống gồm 2 bộ phận chính, hoạt động qua lại với nhau.
- Bộ phận tổ chức đào tạo: có chức năng điều hành, quản lý tất cả các bộ phận phòng ban khác, phân công lịch giảng dạy, phân công các học phần cho các giảng viên đảm nhiệm.
- Bộ phận giảng viên : có chức năng thực hiện đúng phân công của bộ phận tổ chức đào tạo. Tổ chức, quản trị thông tin các học phần mình đảm nhiệm sao cho phù hợp nhất.
1.4 Quy tắc quản lý
Trong quá trình quản lý cần áp dụng các quy tắc sau:
- Mỗi giảng viên được xác định duy nhất bởi một mã số gọi là mã giảng viên, dùng để phân biệt các giảng viên với nhau trong một khoa.
- Quản lý họ và tên, học hàm, học vị của giảng viên.
- Quản lý phân công giảng dạy, các học phần mà từng giảng viên phụ trách.
- Mỗi học phần được xác định huy nhất bởi một mã học phần, dùng để phân biệt các học phần. Một học phần có thể được phân công cho nhiều giảng viên phụ trách giảng dạy.
- Quản lý thông tin từng học phần như: số tín chỉ, cấu trúc, mục tiêu học phần, tính bắt buộc, học phần tiên quyết, phương pháp giảng dạy, đánh giá học phần. Ngoài ra mỗi học phần sẽ có đề cương riêng, tài liệu tham khảo (nếu có).
- Đề cương học phần được quản lý bởi giảng viên đã được phân công quản lý học phần. Thông tin tối thiểu cần có: Thuộc học phần nào, tiêu đề (chương, mục), thời lượng bài giảng, mục đích, yêu cầu trước bài học, nội dung chính, nội dung thảo luận, tự học, các câu hỏi ôn tập, tài liệu (link bản mềm), độ ưu tiên trong cấu trúc học phần.
- Tài liệu tham khảo là tài liệu dùng chung cho các học phần. Thông tin tài liệu tham khảo cần quản lý: Mã tài liệu (xác định tính duy nhất cho tài liệu), tác giả của tài liệu, nhà xuất bản, năm xuất bản, link download (nếu có)
- Yêu cầu cho hệ thống: cần phân quyền cho giảng viên để giảng viên có thể trực tiếp quản lý các học phần của mình
2. Mô hình tiến trình nghiệp vụ của hệ thống
a. Định nghĩa về ký hiệu
Ký hiệu bộ phận hệ thống. Ngăn trên ghi tên bộ phận, ngăn dưới ghi tên chức năng
Luồng dữ liệu: Chiều mũi tên là chiều của luồng thôn tin. Ghi tên của luồng thông tin phía trên. Thông thường tên của luồng thông tin là tên công việc
3. Xác định nhóm người sử dụng hệ thống
Hệ thống bao gồm 2 nhóm người sử dụng là : Quản trị, Giảng Viên
Tiêu chí phân nhóm người sử dụng
Dựa trên nghiệp vụ của hệ thống: hệ thống chia thành 2 luồng nghiệp vụ là quản lý danh mục và quản lý học phần. Vì thế, việc chia nhóm người sử dụng sẽ giúp người dùng làm đúng với nghiệp vụ của mình, không có tình trạng người biết nghiệp vụ này lại phải làm nghiệp vụ khác không phải chuyên môn của mình
Phận định công việc của nhóm sử dụng hệ thống
Mỗi bộ phận được phân quyền cho những nghiệp vụ mà mình am hiểu và thực hiện. Những bộ phận khác không biết về nghiệp vụ của bộ phận đó sẽ không có quyền tác động luồng dữ liệu thông tin cũng như nghiệp vụ của bộ phận đó. Hiện tại, hệ thống chia làm 2 nhóm người sử dụng như sau:
- Quản trị : Tiếp nhận thông tin giảng viên, thông tin cơ bản của học phần. Tạo các danh mục ban đầu và phân công giảng dạy học phần cho giảng viên
- Giảng viên : Cập nhật chi tiết thông tin của mình. Dựa vào bảng phân công giảng dạy, giảng viên có trách nhiệm cập nhật chi tiết các thông tin học phần, đề cương, kế hoạch giảng dạy, tài liệu cho học phần mình phụ trách
II. Hồ sơ xác lập dự án. 1. Hồ sơ điều tra
1.1 Hồ sơ đầu vào
- Thông tin giảng viên - Thông tin học phần
- Thông tin đề cương học phần - Thông tin tài liệu
1.2 Hồ sơ đầu ra
- Danh mục giảng viên - Danh mục học phần - Phân công giảng dạy
- Danh mục đề cương học phần - Danh mục tài liệu học phần
1.3 Tài nguyên
- Dữ liệu giảng viên - Dữ liệu học phần - Dữ liệu đề cương
2. Dự trù thiết bị
a. Cấu hình thiết bị
Tên máy Mục đích Sở hữu Cấu hình
Máy chủ Server Quản trị
- 4 CPUs Intel Xeon trở lên
- 2Gb RAM hoặc hơn (2x1Gb)
- HDD : 160Gb trở lên Máy giảng
viên Máy trạm BP Giảng viên
- Dual Core 1.6GHz - 2Gb RAM hoặc hơn - HDD : 160Gb trở lên
b. Thiết bị ngoại vi
Tên máy Mục đích Sở hữu Cấu hình
Modem Mạng LAN Quản trị - 4 x RJ45 10/100 Mbps Base - T, 1 x USB, 1 x RJ11 - 8Mbps/ 832kbps - ITU G.992.1, ITU G.992.2, PPTP, T1.413 issue2, G.711 A/u law Máy in BP Quản trị In giấy tờ BP Quản trị - In được 2 mặt in, in tràn lề, kết hợp photo được - Cỡ giấy A4
- Độ phân dải: 2400x600dpi - In được 2 mặt in, in tràn lề,
Máy in BP Giảng viên
In giấy tờ BP Giảng viên kết hợp photo được - Cỡ giấy A4
- Độ phân dải: 2400x600dpi
c. Phần mềm
STT Hạng mục Yêu cầu Ghi chú
1 Môi trường máy trạm HĐH Windows XP, Vista, Win 7
Intel Pentium IV 2,4 Ghz Ram 512 Mb trở lên 2 Môi trường máy chủ HĐH Windows XP, Vista,
Win 7
Intel Pentium IV 2,4 Ghz Ram 512 Mb trở lên 3 Hệ quản trị CSDL SQL Server 2005, 2008. 4 Bộ gõ tiếng việt Unikey, Vietkey 5 Đĩa cài máy in Tùy theo máy in sử dụng 6 Hệ giao diện Microsoft Visual Studio 2005,
Chương 2
PHÂN TÍCH HỆ THỐNG
I. Sơ đồ phân cấp chức năng
II. Sơ đồ luồng dữ liệu 1. Sơ đồ ngữ cảnh
3. Mức dưới đỉnh
Chương3
THIẾT KẾ CƠ SỞ DỮ LIỆU
Căn cứ vào các lớp đối tượng ở trên và mối quan hệ chỉ ra ta tiến hành thiết kế khối CSDL vật lý cho toàn hệ thống. Việc thiết kế CSDL phải đạt được các yêu cầu về dữ liệu như ràng buộc chặt chẽ kèm theo ở đây việc thiết kế CSDL sẽ được tiến hành theo hướng mô hình CSDL quan hệ. Hướng thiết kế CSDL quan hệ có những đặc điểm nổi bật:
- Dữ liệu được lưu trữ và có cấu trúc.
- Tính ràng buộc và tính nhất quán dữ liệu cao. - Hầu hết các công cụ lập trình đều hỗ trợ.
Cấu trúc các bảng dữ liệu
Các đối tượng có thuộc tính giống nhau sẽ được lưu trữ chung một bảng:
1. Bảng tbl_BoMon
Tên cột Kiểu dữ liệu Ý nghĩa Thuộc tính
MaBoMon Int Mã bộ môn PK, NOT NULL
TenBoMon Varchar(20) Tên bộ môn NOT NULL
Khoa Varchar(20) Tên Khoa NULL
DienThoai Char(10) Điện thoại bộ môn NULL
2. Bảng tbl_GiangVien
Tên cột Kiểu dữ liệu Ý nghĩa Thuộc tính
MaGiangVien Int Mã giảng viên PK, NOT NULL
MaBoMon Int Ma bộ môn NOT NULL
UserName Char(10) Tên đăng nhập NULL
HoVaTen Varchar(20) Họ và tên giảng viên NOT NULL
HocHam Varchar(20) Học hàm NULL
HocVi Varchar(20) Học vị NULL
HuongNghienCuu Varchar(100) Hướng nghiên cứu chính NOT NULL
DienThoai Char(10) Điện thoại NULL
Email Varchar(20) Email NULL
DiaChiLienHe Varchar(50) Địa chỉ liên hệ NULL DiaDiemLamViec Varchar(50) Địa điểm làm việc NULL AnhCaNhan Varchar(20) Link ảnh cá nhân NULL
3. Bảng tbl_HocPhan
Tên cột Kiểu dữ liệu Ý nghĩa Thuộc tính
MaHocPhan Int Mã học phần PK, NOT NULL
MaBoMon Int Mã bộ môn NOT NULL
TenHocPhan Varchar(50) Tên học phần NOT NULL
SoTinChi Int Số tín chỉ NOT NULL
CauTruc Varchar(250) Cấu trúc NOT NULL
MucTieu Varchar(250) Mục tiêu học phần NOT NULL
BatBuoc Bit Tính bắt buộc NOT NULL
HocPhanTienQuyet Varchar(200) Học phần tiên quyết NOT NULL PPGiangDay Varchar(500) Phương pháp giảng dạy NULL
4. Bảng tbl_DeCuong
Tên cột Kiểu dữ liệu Ý nghĩa Thuộc tính
MaDeCuong Int Mã đề cương PK, NOT NULL
TieuDe Varchar(50) Tiêu đề (chương, mục) NOT NULL ThoiLuong Varchar(20) Thời lượng đề cương NOT NULL
MucDich Varchar(250) Mục đích NULL
YeuCau Varchar(250) Yêu cầu NULL
NoiDung Ntext Nội dung đề cương NOT NULL
TuHoc Varchar(250) Phần tự học NULL
BaiTap Varchar(250) Phần bài tập NULL
ThamKhao Varchar(20) Link tham khảo NULL
CauHoiOnTap Varchar(500) Câu hỏi ôn tập NULL
DoUuTien Int Độ ưu tiên NOT NULL
5. Bảng tbl_PhanCongGiangDay
Tên cột Kiểu dữ liệu Ý nghĩa Thuộc tính
ID Int Mã phân công PK, NOT NULL
MaHocPhan Int Mã học phần NOT NULL
MaGiangVien Int Mã giảng viên NOT NULL
6. Bảng tbl_TaiLieu
Tên cột Kiểu dữ liệu Ý nghĩa Thuộc tính
MaTaiLieu Int Mã tài liệu PK, NOT NULL
TenTaiLieu Varchar(50) Tên tài liệu NOT NULL NhaXuatBan Varchar(20) Tên nhà xuất bản NULL
TacGia Varchar(20) Tên tác giả NOT NULL
NamXuatBan Char(4) Năm xuất bản NULL
7. Bảng tbl_NguoiDung
Tên cột Kiểu dữ liệu Ý nghĩa Thuộc tính
UserName Char(10) Tên đăng nhập PK, NOT NULL
Password Char(10) Mật khẩu NOT NULL
Role Int Quyền NOT NULL
8. Bảng tbl_TaiLieuHP
Tên cột Kiểu dữ liệu Ý nghĩa Thuộc tính
ID Int Mã bảng PK, NOT NULL
MaHocPhan Int Mã học phần NOT NULL
Phần 4 KẾT LUẬN
1. Yêu cầu xác nhập một hệ thống mới
Để khắc phục được những nhược điểm của việc quản lý thủ công và đáp ứng tốt yêu cầu cần thiết về tính chính xác đầy đủ, nhanh chóng, tiết kiệm thời gian và một cách có khoa học trước yêu cầu thực tế ngày càng đa dạng phng phú của công tác quản lý giáo dục. Việc ứng dụng tin học vào hay nói cách khác việc đưa máy tính vào trong công tác quản lý giáo dục cụ thể là quản lý môn học sẽ giúp nâng cao chất lượng quản lý, giảm được sức lực, nhân lực làm việc. Đồng thời giúp giảng viên cũng như sinh viên tương tác với môn học hiệu quả.
2. Mục đích của việc xây dựng hệ thống mới
Với mục đích cải tiến hệ thống cũ và tin học hóa công tác qản lý nhằm giảm bớt tối đa công đoạn thủ công nên cần thiết xây dựng hệ thống mới, xây dựng một phần mềm website môn học nhằm mục đích:
- Quản lý thông tin về học phần.
- Quản lý thông tin về đề cương các môn học. - Quản lý tài liệu tham khảo các môn học. - Quản lý thông tin giảng viên.
- Cho phép giảng viên, sinh viên có thể tra cứu thông tin học phần nhanh chóng, tiện lợi.
3. Yêu cầu của việc xây dựng hệ thống mới
Lưu trữ và truy cập một Cơ sở dữ liệu (CSDL) hoàn chỉnh, đảm bảo các điều kiện sau:
- Dữ liệu đưa vào đầy đủ.
- Thông tin được đưa vào nhanh gọn và chính xác. - Lưu trữ dữ liệu có tính khoa học an toàn.
Việc sử dụng chương trình phải đảm bảo tính đơn giản dễ hiểu, thân thiện. Giao diện giữa người dùng và chương trình phải rõ ràng, giảm bớt độ phức tạp. Lưu trữ tìm kiếm thông tin theo yêu cầu phải đảm bảo nhanh gọn, chính xác.
4. Hướng phát triển đồ án
Với các yêu cầu và mục đích trên dẫn đến hướng xây dựng một chương trình quản lý website môn học (online). Nó có thể giúp giải quyết được các vấn đề nêu trên.
TÀI LIỆU THAM KHẢO
1. “Những bài thực hành HTML”, Đinh Xuân Lâm, Nhà xuất bản thống kê.
2. “Những bài thực hành ASP”, VN-Guide, Nhà xuất bản thống kê. 3. “Giáo trình tin học lý thuyết và bài tập”, Nguyễn Phương Lan, Nhà
xuất bản giáo dục.
4. “Tự học Microsoft SQL Server 7.0”, Nguyễn Văn Hoàng và nhóm tác giả Elicom, Nhà xuất bản thống kê.
NHẬN XÉT VÀ ĐÁNH GIÁ
1. Nhận xét của giáo viên hướng dẫn
... ... ... ... ... ... ... ... ... ... ... 2. Điểm thực tập