Tiêu chí 1: Mô tả bài toán I.Mục đích: Hệ thống này được thiết kế để quản lý các thông tin liên quan đến sách, tác giả, nhà xuất bản, ngôn ngữ, kho sách, và sinh viên.. Nó giúp theo dõi
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
VIỆN KĨ THUẬT BƯU ĐIỆN
- -
BÁO CÁO BÀI TẬP LỚN
Giảng viên: Lê Hải Việt
Sinh viên thực hiện: Nguyễn Lưu Nhật Duy
Nguyễn Thái Dương
1
Trang 2Mục l c ụ
Tiêu chí 1: Mô tả bài toán 3
I.Mục đích: 3
II.Yêu cầu: 3
III.Quy trình xử lý bên trong hệ thống: 3
IV.Các trường dữ liệu cần thiết lưu trữ trong cơ sở dữ liệu: 3
Tiêu chí 2: Lược đồ ERD 4
Tiêu chí 3: Lược đồ ERM 5
*Quy trình chuyển đổi: 5
Tiêu chí 4: Bảng dữ liệu mức vật lý 6
Tiêu chí 5:Triển khai cơ sở dữ liệu 7
Tiêu chí 6: Nhập các dữ liệu mẫu 8
Tiêu chí 7: Truy vấn sử dụng các câu lệnh đã học 8
*INSERT: 8
*DELETE: 10
*UPDATE: 11
*SELECT: 12
Trang 3Tiêu chí 1: Mô tả bài toán
I.Mục đích:
Hệ thống này được thiết kế để quản lý các thông tin liên quan đến sách, tác giả, nhà xuất bản, ngôn ngữ, kho sách, và sinh viên Nó giúp theo dõi các thông tin như sách đang được mượn, trạng thái của kho sách, và thông tin về sinh viên
II.Yêu cầu:
-Hệ thống cần phải có khả năng lưu trữ, truy vấn, cập nhật và xóa các thông tin liên quan đến sách, tác giả, nhà xuất bản, ngôn ngữ, kho sách, và sinh viên
III.Quy trình xử lý bên trong hệ thống:
-Hệ thống sử dụng các trường dữ liệu và mối quan hệ giữa chúng để xác minh danh tính, theo dõi và báo cáo về việc mượn/trả sách
1. Nhập dữ liệu: Khi có cuốn sách mới, thông tin về sách (như Mã sách, Tên sách,
Năm xuất bản), tác giả (như Mã tác giả, Tên tác giả), nhà xuất bản (như Mã NXB, Tên NXB), và ngôn ngữ sẽ được nhập vào hệ thống Hệ thống cũng cần cập nhật thông tin về kho sách
2.Xử lý mượn sách: Khi một sinh viên muốn mượn sách, hệ thống sẽ kiểm tra
xem sách đó còn trong kho không Nếu còn, hệ thống sẽ cập nhật trạng thái của cuốn sách và thông tin mượn sách của sinh viên
3.Xử lý trả sách: Khi sinh viên trả sách, hệ thống sẽ cập nhật trạng thái của cuốn
sách và thông tin mượn sách của sinh viên
4.Tra cứu thông tin: Hệ thống cho phép tra cứu thông tin về sách, tác giả, nhà
xuất bản, ngôn ngữ, và sinh viên Có thể tra cứu sách theo tên, tác giả, nhà xuất bản, ngôn ngữ Cũng có thể tra cứu thông tin mượn sách của sinh viên
5.Cập nhật thông tin: Hệ thống cho phép cập nhật thông tin về sách, tác giả, nhà
xuất bản, ngôn ngữ, kho sách, và sinh viên Khi có thay đổi về thông tin, hệ thống cần được cập nhật để đảm bảo thông tin luôn chính xác
6.Xóa thông tin: Khi một cuốn sách không còn trong thư viện, hoặc một sinh viên
ra trường, hệ thống cần xóa thông tin liên quan
IV.Các trường dữ liệu cần thiết lưu trữ trong cơ sở dữ liệu:
1.Sách:
-Mã sách: Mã duy nhất để xác định mỗi cuốn sách trong thư viện
-Tên sách: Tên của cuốn sách
-Năm xuất bản: Năm mà cuốn sách được xuất bản
-Số lượng: Số lượng cuốn sách có sẵn trong thư viện
-Ngôn ngữ: Ngôn ngữ mà cuốn sách được viết
-Nhà xuất bản: Nhà xuất bản của cuốn sách
-Tác giả: Người đã viết cuốn sách
Trang 4-Vị trí: Vị trí của cuốn sách trong thư viện
-Loại sách: Loại sách (ví dụ: tiểu thuyết, học thuật, truyện tranh, v.v.)
2.Loại sách:
-Mã loại: Mã duy nhất để xác định mỗi loại sách
-Tên loại: Tên của loại sách
3.Tác giả:
-Mã tác giả: Mã duy nhất để xác định mỗi tác giả
-Tên tác giả: Tên của tác giả
-Địa chỉ: Địa chỉ của tác giả
4.Nhà xuất bản:
-Mã NXB: Mã duy nhất để xác định mỗi nhà xuất bản
-Tên NXB: Tên của nhà xuất bản
-Địa chỉ: Địa chỉ của nhà xuất bản
5.Ngôn ngữ:
-Tên tiếng ngoại ngữ: Tên của ngôn ngữ mà sách được viết
6.Kho sách:
-Mã kho: Mã số của kho sách
-Tên kho: Tên của kho sách
7.Sinh viên:
-Mã sinh viên: Mã duy nhất để xác định mỗi sinh viên
-Họ tên sinh viên: Tên đầy đủ của sinh viên
-Lớp: Lớp mà sinh viên đang theo học
-Số độc giả: Số thẻ độc giả của sinh viên
Tiêu chí 2: Lược đồ ERD
Trang 5Tiêu chí 3: Lược đồ ERM
*Quy trình chuyển đổi:
1.Xác định các thực thể (entities): Trong ERD, các thực thể đã được xác định
như “SÁCH”, “TÁC GIẢ”, “NXB” (Nhà Xuất Bản), “LOẠI SÁCH”, “NGÔN NGỮ”, “VỊ TRÍ”, “KHO”, và “SINH VIÊN” Trong ERM, các thực thể này đã được chuyển đổi thành các bảng với tên tương ứng
2.Xác định các thuộc tính (attributes): Các thuộc tính của mỗi thực thể trong
ERD đã được chuyển đổi thành các cột trong các bảng tương ứng trong ERM Ví
dụ, thực thể “SÁCH” trong ERD có các thuộc tính như “Mã sách”, “Tựa sách”,
“Mô tả ngắn”,… đã được chuyển đổi thành các cột trong bảng “Books” trong ERM
3.Xác định khóa chính (primary keys): Khóa chính của mỗi thực thể trong ERD
đã được chuyển đổi thành khóa chính của các bảng tương ứng trong ERM Ví dụ,
“Mã sách” là khóa chính của thực thể “SÁCH” trong ERD và đã được chuyển đổi thành khóa chính của bảng “Books” trong ERM
4.Xác định khóa ngoại (foreign keys): Các mối quan hệ giữa các thực thể trong
ERD đã được chuyển đổi thành các khóa ngoại trong ERM Ví dụ, mối quan hệ giữa “SÁCH” và “TÁC GIẢ” trong ERD đã được chuyển đổi thành khóa ngoại
“AuthorID” trong bảng “Books” trong ERM
5.Xác định các mối quan hệ: Các mối quan hệ giữa các thực thể trong ERD đã
Trang 6được chuyển đổi thành các mối quan hệ trong ERM Ví dụ, mối quan hệ “mượn” giữa “SÁCH” và “SINH VIÊN” trong ERD đã được chuyển đổi thành bảng
“Borrowing” trong ERM, với “StudentID” và “BookID” là khóa ngoại.\
Tiêu chí 4: Bảng dữ liệu mức vật lý
1.Bảng Warehouse (Kho):
-WarehouseID (INT, PRIMARY KEY): ID duy nhất của kho
-WarehouseName (NVARCHAR(200)): Tên của kho
2.Bảng Authors (Tác giả):
-AuthorID (INT, PRIMARY KEY): ID duy nhất của tác giả
-Name (NVARCHAR(100)): Tên của tác giả
-Address (NVARCHAR(200)): Địa chỉ của tác giả
3.Bảng Publishers (Nhà xuất bản):
-PublisherID (INT, PRIMARY KEY): ID duy nhất của nhà xuất bản
-Name (NVARCHAR(100)): Tên của nhà xuất bản
-Address (NVARCHAR(200)): Địa chỉ của nhà xuất bản
4.Bảng Students (Sinh viên):
-StudentID (INT, PRIMARY KEY): ID duy nhất của sinh viên
-Name (NVARCHAR(100)): Tên của sinh viên
-Class (NVARCHAR(50)): Lớp của sinh viên
5.Bảng BookTypes (Thể loại sách):
-TypeID (INT, PRIMARY KEY): ID duy nhất của thể loại sách
-TypeName (NVARCHAR(50)): Tên của thể loại sách
6.Bảng BookLocations (Vị trí sách):
-LocationID (INT, PRIMARY KEY): ID duy nhất của vị trí sách
-Area (NVARCHAR(50)): Khu vực lưu trữ sách
-Shelf (NVARCHAR(50)): Kệ lưu trữ sách
-RowLocation (NVARCHAR(50)): Hàng lưu trữ sách
7.Bảng Languages (Ngôn ngữ):
-LanguageID (INT, PRIMARY KEY): ID duy nhất của ngôn ngữ
-LanguageName (NVARCHAR(50)): Tên của ngôn ngữ
8.Bảng Books (Sách):
-BookID (INT, PRIMARY KEY): ID duy nhất của sách
-Title (NVARCHAR(100)): Tiêu đề của sách
-YearPublished (CHAR(4)): Năm xuất bản của sách (vd: '1997')
-AuthorID (INT, FOREIGN KEY REFERENCES Authors(AuthorID)): Khóa ngoại liên kết đến AuthorID trong bảng Authors
-PublisherID (INT, FOREIGN KEY REFERENCES Publishers(PublisherID)): Khóa ngoại liên kết đến PublisherID trong bảng Publishers
Trang 7-TypeID (INT, FOREIGN KEY REFERENCES BookTypes(TypeID)): Khóa ngoại liên kết đến TypeID trong bảng BookTypes
-LanguageID (INT, FOREIGN KEY REFERENCES Languages(LanguageID)): Khóa ngoại liên kết đến LanguageID trong bảng Languages
-LocationID (INT, FOREIGN KEY REFERENCES BookLocations(LocationID)): Khóa ngoại liên kết đến LocationID trong bảng BookLocations
-WarehouseID (INT, FOREIGN KEY REFERENCES Warehouse(WarehouseID)): Khóa ngoại liên kết đến WarehouseID trong bảng Warehouse
9.Bảng Borrowing (Mượn sách):
-BookID (INT, FOREIGN KEY REFERENCES Books(BookID)): Khóa ngoại liên kết đến BookID trong bảng Books
-StudentID (INT, FOREIGN KEY REFERENCES Students(StudentID)): Khóa ngoại liên kết đến StudentID trong bảng Students
-BorrowDate (DATE): Ngày mượn sách
-ReturnDate (DATE): Ngày trả sách
Tiêu chí 5:Triển khai cơ sở dữ liệu
Trang 8Tiêu chí 6: Nhập các dữ liệu mẫu
Tiêu chí 7: Truy vấn sử dụng các câu lệnh đã học
-Before:
Trang 9-After:
Trang 10-Before:
-After:
Trang 11Bảng Borrowing tương tự
-Before:
Trang 12-After:
Các bảng còn lại tương tự
*SELECT: