
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CMC
BÀI TẬP LỚN
Học phần: Các hệ quản trị cơ sở dữ
liệu
Tên đề tài: Hệ thống quản lý thư viện
Nhóm sinh viên: Nhóm 1
Giảng viên hướng dẫn: Nguyễn Thị Vân Anh
Hà Nội, tháng - 2025

Mục lục

ĐẶT VẤN ĐỀ
Trong thời đại công nghệ thông tin phát triển mạnh mẽ, việc
ứng dụng các hệ thống quản lý dữ liệu vào hoạt đổng các tổ chức,
đơn vị là điều tất yếu nhằm nâng cao hiệu quả vận hành. Thư viện –
nơi lưu trữ, cung cấp chia sẻ tri thức cũng không nằm ngoài xu thế
đó. Tuy nhiên , trong nhiều thư viện truyền thống, quy trình quản lý
sách, tra cứu tài liệu, theo dõi mượn trả và quản lý độc giả vẫn còn
được thực hiện thủ công hoặc bán thủ công, dẫn đến nhiều hạn chế
như: Dữ liệu bị phân tán, khó kiểm soát, mất rất nhiều thời gian cho
việc thống kê, dễ xảy ra sai xót và không đáp ứng kịp nhu cầu tra
cứu nhanh chóng của người dùng cũng như độc giả cần tìm kiếm.
Do đó, việc xây dựng “Hệ Thống Quản Lý Thư Viện” dựa trên
các nguyên tắc thiết kế cơ sở dữ liệu trở nên cần thiết. Hệ thống
giúp thư viện tổ chức dữ liệu một cách khoa học, hỗ trợ tra cứu sách
theo nhiều tiêu chí khác nhau (tên sách, tác giả,…), quản lý thông
tin độc giả, theo dõi tình trạng mượn-trả của từng cuốn sách, cũng
như cung cấp báo cáo thống kê hỗ trợ công tác nghiệp vụ của thủ
thư.
Ngoài ra, đề tài còn giúp sinh viên hiểu rõ quy trình phân tích,
thiết kế và xây dựng cở sở dữ liệu cho một hệ thống thực tế từ mô
hình ERD đến triển khai lược đồ cơ sở dữ liệu và truy vấn dữ liệu.
Đây là kiến thức trọng tâm và nền tảng cho các môn học thuộc lĩnh
vực cơ sở dữ liệu và phát triển phần mềm sau này. Vì vậy nhóm tiền
hành thực hiện đề tài “Xây dựng hệ thống quản lý thư viện” nhằm
mục tiêu tạo ra một mô hình dữ liệu đầy đủ, chặt chẽ và có khả
năng triển khai trong thực tế.

CHƯƠNG 1. GIỚI THIỆU BÀI TOÁN
1.1. Giới thiệu tổng quan
Thư viện là nơi lưu trữ và cung cấp tri thức cho độc giả thông
qua hệ thống đầu sách. Trong quá trình hoạt động, việc quản lý
sách, quản lý độc giả và theo dõi tình trạng mượn- trả thường được
thực hiện qua các phương pháp thủ công dẫn đến thất lạc thông
tin , thống kê không chính xác và mất rất nhiều thời gian để xử lý
nghiệp vụ.
Để khắc phục hạn chế đó, hệ thống được xây dựng nhằm hỗ trợ
thủ thư quản lý đầu sách, độc giả và phiếu mượn một cách hiệu quả
, đồng thời cung cấp các chức năng tìm kiếm, thống kê theo yêu
cầu. Hệ thống hướng đến việc đảm bảo dữ liệu được truy xuất
nhanh chóng và dễ dàng mở rộng.
1.2. Bài toán đề xuất
Một thư viện muốn xây dựng hệ thống phần mềm quản lý việc
mượn trả sách và quản lý thông tin độc giả tại thư viện với các chức
năng cập nhật, tìm kiếm, báo cáo thống kê. Các nghiệp vụ tại thư
viện được mô tả như sau:
- Các đầu sách được nhập về và quản lý tại thư viện với các
thông tin : mã sách, tên sách, tác giả, nhà xuất bản, năm xuất bản.
Cùng một đầu sách sẽ có nhà xuất bản hoặc năm xuất bản khác
nhau sẽ khác nhau về mã sách.
- Mỗi độc giả khi mượn sách sẽ có một phiếu mượn gồm các
thông tin: mã phiếu, mã độc giả, ngày mượn, ngày trả và danh sách
sách mượn. Một lần độc giả có thể mượn từ 1 đến 5 cuốn sách khác
nhau và trả cùng một ngày theo quy định. Mỗi độc giả được quản lý
theo mã độc giả, tên độc giả, địa chỉ, số điện thoại.
- Một độc giả có thể mượn nhiều lần nhưng phải trả sách đang
mượn thì mới thực hiện mượn được đầu sách khác.
Hệ thống cần cung cấp các chức năng chính:
- Danh sách độc giả đang mượn sách.
- Danh sách độc giả mượn sách quá hạn.
- Danh mục đầu sách đang được mượn / còn trong thư viện.
- Tìm kiếm sách theo tên, tác giả, năm xuất bản, nhà xuất bản.

- Thống kê đầu sách theo năm xuất bản, nhà xuất bản, tác giả.
- Đếm số lượng đầu sách theo năm xuất bản, tác giả.
- Danh sách độc giả mượn từ 3 lần trở lên trong tháng.
- Xóa những đầu sách xuất bản trước năm 1990 khỏi danh mục.
1.3.Kế hoạch thực hiện
STT Nội dung thực hiện Sản phẩm cần đạt Người phụ trách
Thời
gian
(tuần)
1
Phân tích nghiệp vụ và thiết kế
DataBase
Tài liệu mô tả nghiệp vụ, sơ đồ
ERD, lược đồ CSDL
Nguyễn Minh Hiếu
2 Bộ truy vấn SQL
Tạo bảng và dữ liệu, các truy
vấn cơ bản.
Đỗ Mạnh Hùng +
Minh Hiếu
3 Bộ truy vấn SQL
Tạo View, Index, các hàm thủ
tục.
Nguyễn Minh Đức
4
Truy vấn thống kê trên MongoDB
Tạo CSDL, 1 số truy vấn tổng
hợp trên MongoDB
Tô Hoàng Vũ
5 Giao diện demo và viết báo cáo
Đưa ra 1 số giao diện cho việc
truy vấn, tổng hợp viết báo cáo
Lê Văn Anh
Cương + Hùng
Chương 2: Giải pháp thực hiện
2.1.Thiết kế cơ sở dữ liệu
2.1.1.Xác định các thực thể
- Thực thể Độc Giả với các thuộc tính:
+ Mã độc giả(Khóa chính)
+ Tên độc giả
+ Địa chỉ
+ Số điện thoại
- Thực thể Phiếu Mượn với các thuộc tính:
+ Mã Phiếu(Khóa chính)
+ Ngày Mượn
+ Ngày hẹn trả
+ Ngày trả thực tế

+ Mã độc giả
- Thực thể Đầu Sách với các thuộc tính:
+ Mã sách(Khóa chính)
+ Tên sách
+ Tác giả
+ Nhà Xuất Bản
+ Năm Xuất Bản
- Thực thể trung gian Chi Tiết Phiếu Mượn với các thuộc tính:
+ Mã Phiếu
+ Mã Sách
+ Số lượng
2.1.2.Mô Hình ERD
2.2.Thiết kế lược đồ quan hệ
2.2.1.Bảng DOCGIA(Độc giả)
Hình 2.1. Sơ đồ ERD quản lý thư viện

Tên trường Mô tả Kiểu dữ liệu Điều kiện
MaDocGia Mã độc giả NCHAR(10) PRIMARY KEY, NOT NULL
TenDocGia Tên độc giả NVARCHAR(100) NOT NULL
DiaChi Địa chỉ NVARCHAR(200) NULL
SoDienThoai Số điện thoại VARCHAR(15) NULL
2.2.2.Bảng DAUSACH(Đầu Sách)
Tên trường Mô tả Kiểu dữ liệu Điều kiện
MaSach Mã sách NCHAR(10) PRIMARY KEY, NOT NULL
TenSach Tên sách NVARCHAR(200) NOT NULL
TacGia Tác giả NVARCHAR(100) NOT NULL
NhaXuatBan Nhà xuất bản NVARCHAR(100) NULL
NamXuatBan Năm xuất bản INT CHECK(NamXuatBan > 0)
2.2.3.Bảng PHIEUMUON(Phiếu Mượn)
Tên trường Mô tả Kiểu dữ liệu Điều kiện
MaPhieu Mã phiếu mượn INT
PRIMARY KEY, IDENTITY(1,1),
NOT NULL

Tên trường Mô tả Kiểu dữ liệu Điều kiện
MaDocGia Mã độc giả NCHAR(10)
FOREIGN KEY REFERENCES
DOCGIA(MaDocGia), NOT NULL
NgayMuon Ngày mượn DATE NOT NULL
NgayHenTra Ngày hẹn trả DATE NOT NULL
NgayTra Ngày trả thực tế DATE NULL
2.2.4.Bảng CHITIETPHIEUMUON(Chi Tiết Phiếu Mượn)
Tên trường Mô tả Kiểu dữ liệu Điều kiện
MaPhieu Mã phiếu mượn INT
PRIMARY KEY (1/2), FOREIGN
KEY REFERENCES
PHIEUMUON(MaPhieu)
MaSach Mã sách NCHAR(10)
PRIMARY KEY (2/2), FOREIGN
KEY REFERENCES
DAUSACH(MaSach)
SoLuong
Số lượng sách
mượn
INT
CHECK(SoLuong >= 1 AND
SoLuong <= 5)
GhiChu
Ghi chú tình
trạng
NVARCHAR(50) NULL

Chương 3:Kết quả thực nghiệm
Chương này trình bày toàn bộ các kết quả thực nghiệm thu được
sau khi tiến hành xây dựng cơ sở dữ liệu và triển khai các truy vấn
SQL theo yêu cầu của bài toán quản lý thư viện. Các kết quả bao
gồm việc tạo bảng, nhập dữ liệu, thực thi truy vấn, xây dựng view,
index, thủ tục, trigger và các truy vấn nâng cao trên MongoDB.
THIẾT KẾ TRÊN SQL
3.1.Tạo cơ sở dữ liệu và các bảng
3.1.1.Tạo Database
CREATE DATABASE anLyuVien;
USE anLyuVien;
3.1.2. Tạo bảng DOCGIA (Độc Giả)
CREATE TABLE DOCGIA (
MaDocGia NCHAR(10) PRIMARY KEY,
TenDocGia NVARCHAR(100) NOT NULL,
DiaChi NVARCHAR(200),
SoDienoai VARCHAR(15)
);
3.1.3.Tạo bảng DAUSACH(Đầu Sách)
CREATE TABLE DAUSACH (
MaSach NCHAR(10) PRIMARY KEY,
TenSach NVARCHAR(200) NOT NULL,
TacGia NVARCHAR(100) NOT NULL,
NhaXuatBan NVARCHAR(100),
NamXuatBan INT CHECK(NamXuatBan > 0)
);
3.1.4.Tạo bảng PHIEUMUON(Phiếu Mượn)
CREATE TABLE PHIEUMUON (
MaPhieu INT PRIMARY KEY IDENTITY(1,1),
MaDocGia NCHAR(10) NOT NULL,
NgayMuon DATE NOT NULL,
NgayHenTra DATE NOT NULL,
NgayTra DATE NULL,
FOREIGN KEY (MaDocGia) REFERENCES DOCGIA(MaDocGia)
);
3.1.5.Tạo bảng CHITIETPHIEUMUON(Chi Tiết Phiếu Mượn)
!"#!$
%&$
''
(%'(
(%'("
)

3.1.6.Thêm dữ liệu cho bảng DOCGIA
"%"%"%""&
*"%**+&,-**+.**/*
*"%0**123+45**+.**/0*
*"%6**7+89:;<**=>**/6*
*"%?**1237@A**+.**/?*
*"%$**2&;B>**B'2**/$*
*"%C**1232<"D**+.**/C*
*"%E**4B>7@7+8**87F**/E*
*"%G**1237@**H12**/G*
*"%/**7I3&;7=-**+.**//*
*"%**1232<**+.**/*
*"%**123IJ**87F**/*
*"%0**7I3=K**HA**/0*
*"%6**4,I**+8**/6*
*"%?**2+**+.**/?*
*"%$**I&;**+8**/$*
*"%C**7I3H1**+.**/C*
*"%E**123L**+.**/E*
*"%G**123&;**MA**/G*
*"%/**2+8**+.**//*
*"%0**123F'2<**N**/0*
*"%0**&D&:**+.**/0*
*"%00**123+O**+.**/00*
*"%06**4:J&2<-P**+.**/0E*
*"%0?**I+&D**HA**/66*)
3.1.7.Thêm dữ liệu cho bảng DAUSACH
"%9-89-&
*&**.-HQRS
T
:%**123F&:**9%H"P
&,-8*00?
*&0**:18U-TI**VWX4Y&WZW**9%H"P&,-
8*/
***22<U+B[**-\"]\--**9%H"P&,-8*
006
*0**7^;<7_T"+**`48**9%H"P&,-8*00?
*6**?%B>+I**"Z4**9%H"P&,-8*/EC
*?**5L12<-12<-4AT-\V`W**48%ZZ**9%H"P&,-
8*00?
*$**B"1T,**a1**9%H"P&,-8*/G$
*&6**B^&2J_T**Y1b4**9%H"P&,-8*006
***44`Zc&&d-&5**e4ZYf1"ZZW*
*9%H"P&,-8*00?
*&?**IT>"g".**KLH**9%H"P&,-8*006
*&$**F8Hh**P1i**9%H"P&,-8*006
*&C**2<&+****9%H"P&,-8*000
*&E**&H+d-BT**1234B>2j**9%H"P&,-8*
/E6
*&G**gT7^74;<**123Ldk**9%H"P&,-8*
/GE
***9BTjIgQ2**4:J7@"D**9%H"P&,-8*00?
*C**BT1,-T89O**1%4**9%H"P&,-8*000
*&/**B[8HK**&l>**9%H"P&,-8*00
*&**PKT1**%Z44W**9%H"P&,-8*00
*&**:T8Om+**,kn**9%H"P&,-8*00
*0**:<4O"g,&+%Td-**=8F2**9%H"P&,-
8*00
*6**,72J+**=8U7I**9%H"P&,-8*/G
*?**2<4OH15**123Fo**9%H"P&,-8*
/$

***2<4OIT&,-8_HATITU**4FB>T**9
%H"P&,-8*00
*0**7=BTp_&PIT[72<,=**1--eW4q**9%H"P
&,-8*00
*&06**.I<B>7hk**123Un**987IJ*00?
*9**+4A4@**2+>**9%H"P*006
*&0?**g72Jm5**4:JL**94T*000
*06**B"1H=**7I3F**97.*00$
*0660**H8HU**&D&;8**97=ULI<%*00)
3.1.8.Thêm dữ liệu cho bảng PHIEUMUON
"%11414&
*"%0**00$f6f**00$f6f0?**00$f6f06*
*"%$**00$fEf$**00$fEf0/*
*"%**00$f0f0**00$f0f0C**00$f0f0$*
*"%/**00$f$f0**00$fCf6*
*"%G**00$ffG**00$f0f**00$ff6*
*"%?**00$f?f00**00$f$fC*
*"%6**00$fCf0**00$fCf0C**00$fCf0$*
*"%0?**00$fGfG**00$fGf00*
*"%E**00$f/f$**00$f/f0/**00$f/f0G*
*"%**00$ffG**00$ff*
*"%0**00$ff0**00$ff0C*
*"%0**00$f0f$**00$f0f/**00$f0fG*
*"%**00$ff0$**00$f0fG*
*"%C**00$f6fG**00$f?f**00$f6f6*
*"%G**00$f$f00**00$fCf$*
*"%/**00$fEf**00$fEf0?**00$fEf06*
*"%?**00$fGf0**00$fGf0C*
*"%$**00$f/fG**00$f/f00**00$f/f0*
*"%E**00$ff?**00$ff0G*
*"%C**00$ffG**00$f0f0**00$f0f*
*"%6**00$f0f0**00$f0f0C*
*"%**00$f6f$**00$f6f/**00$f6fG*
*"%$**00$fCfG**00$fCf00*
*"%G**00$f0f0**00$f6fC**00$f6f$*
*"%/**00$f?f$**00$f?f0/*
*"%6**00$f$fG**00$fCf**00$f$f6*
*"%0?**00$ff0**00$ff0C*
*"%E**00$f6f00**00$f?f$**00$f?f?*
*"%**00$fEf0**00$fGf6*
*"%0**00$f/f0$**00$ff/*
*"%0**00$ff$**00$ff/**00$ffG*
*"%**00$ffG**00$ff00*
*"%C**00$f0f$**00$f0f0/**00$f0f0G*
*"%G**00$ffG**00$ff00*
*"%/**00$f0f0**00$f0f0C**00$f0f0$*
*"%?**00$f6f?**00$f6f0G*
*"%$**00$f?fG**00$f$f0**00$f$f*
*"%E**00$f$f00**00$fCf$*
*"%C**00$fCf**00$fCf0?**00$fCf06*
*"%6**00$fEf0**00$fEf0C*
*"%**00$fGf$**00$fGf0/**00$fGf0G*
*"%$**00$f/fG**00$ff0*
*"%G**00$ff0**00$ff6**00$ff0*
*"%/**00$ffG**00$ff00*
*"%6**00$f0f0**00$f0f0C**00$f0f0$*
*"%0?**00$ffG**00$f0f*
*"%E**00$f0f0**00$f6fC**00$f6f$*
*"%**00$f6f00**00$f?f$*
*"%0**00$f?fG**00$ff0**00$f$f*
*"%0**00$f$f00**00$fCf$*
*"%**00$fCf0**00$fCf0C**00$fCf0$*
*"%C**00$fEfG**00$fEf00*

*"%0**00$ff$**00$ff/*
*"%0**00$ffG**00$f0f0*
*"%0**00$ff0E**00$f0f*
*"%06**00$ff0E**00$f0f*
*"%E**00$f0f**00$f0f0**00$f6f$*
*"%E**00$f0f0**00$f0f0**00$f6f$*
*"%E**00$f0f6**00$f0f0**00$f6f$*
*"%0**00$ff0E**00$f0f*
*"%06**00$ff0E**00$f0f*)
3.1.9.Thêm dữ liệu cho bảng CHITIETPHIEUMUON
%&
*&**BrZ:Js:J*
*&0**H8[/Gt*
***Brs2T-8eT*
0*0**4HH1>D*
0*6**4TsO=*
6*?**HeH8[*
6*$**Br2JZ:J*
?*&6**LH=6+1*
?***LH=$+1*
$*&?**I3h-40?*
$*&$**QZ8-4$*
$*&C**%:<1>I<\+*
C*&E**4T-423+1*
E*&G**H`F:<kN*
E***%H1WH>`*
G*C**1`A-=8*
G*&/**HhN`A*
/*&**4TsO=*
/*&**4T-4230+1*
/*0**BrUN8*
*6**H8[/t*
*?**N`O-A=:h*
***Br2@s2J-+*
*0**HssBre2T8e2*
0*&**LH=+1*
6*&0**LH=E+1*
6***LH=csu;<>T*
?*0**Brs2TI-dk*
$*6**H>+NYB[*
C*?**%O-_-T-B*
C*$**TMshk*
E*&6**H2<8c8Br:T-d*
G***"Ks2TZ+8`HH*
/*&?**LH=-:J*
0*&$**`A>-B*
0*&C**:<-ZBr-I<-*
00*&E**7kP\P2@*
00*&G**HN8K:T8h*
06***%:<1>D*
0?*C**BrZ:J6*
0$*&/**4TsO=*
0C*&**A+`F-4N8*
0E*&**%O8[-28*
0G*0**Brs2TUZdk-4A*
0/*6**IN`AkP*
6*?**d--4`F4Hh*
6*&6**BrN82@*
60***Hshk/$t*
66*&?**N\2<-`O-`-40*

6?*&$**BrY+=*
6$*&C**7e2T8e2Z=*
6C*&E**4T-4236+1*
6E*&G**Brs2T-8eT-+Z,*
6G***%N`A-4B[`Fv;*
6/*C**BrkP\P`+Zd*
?*&/**4T-423+1*
?*&**HeH8[*
?0*&**Brs2TsU-28*
?6*0**Brs2TZ+8`+-dkZ[*
??*6**H>;*
?$*?**T4lshk*
?C***Brs2TkP\PsIJH*
?E*0**H8[8*
?G*&**Hs8Br*
?/*&0**>I<8+*
$***BTYP-4Z[kU*
$*0**HsBr12-5*
$0*6**BrkP\P-I<em*)
3.2.Truy vấn cơ bản
3.2.1. Thống kê theo Tên/Tác giả/Năm XB/NXB(sách còn trong thư viện)
ff2
w
("W
bW]
-]
(-
Vk-]!k]
bk]14
"W]*t-_eNt*)
ffHT
w
("W
bW]
-]
(-
Vk-]!k]
bk]14
"W]%*t-HTt*)
ff;89:<-T
w
("W
bW]
-]
(-
Vk-]!k]
bk]14
"W]89-!00)
ff+9:<-T
w
("W
bW]
-]
(-
Vk-]!k]
bk]14

"W]9-*t&,-8t*)
3.2.2.Tìm kiếm sách theo Tên/Tác giả/Năm XB.
w
("
b*t-_eNt*)
w
("
b%*t-HTt*)
w
("
b89-!00)
3.3.Tạo các view
-- VIEW: Độc giả đang mượn sách
&b"%"
Y]"%Y]"%Y]"Y]"
("%Y
VkY]"%!k]"%
bk]14)
Z-w(48"%"
"4k&q"%"
-- VIEW: Độc giả mượn quá hạn
&b"%L
Y]"%Y]"%k]k]1k]14
("%Y
VkY]"%!k]"%
bk]14
"k]14#%"")
Z-w(48"%L
"4k&q"%L
-- VIEW: Sách đang được mượn
&b"
W]W]W]%W]9-W]89-
("W
V-W]!-]
Vk-]!k]
bk]14)
Z-w(48"
"4k&q"
-- VIEW: Sách còn trong thư viện (chưa có ai mượn)

&b4&
W]W]W]%W]9-W]89-
("W
bW]
-]
(-
Vk-]!k]
bk]14
)
Z-w(484&
"4k&q4&
--View: Độc giả mượn nhiều sách trong tháng hiện tại
&b"%4
Y]"%Y]"%
k]
("%Y
VkY]"%!k]"%
bk]1!%"
"'k]1!'%"
%'Y]"%Y]"%
&%k] !6)
Z-w(48"%4
"4k\q"%4
-View: thống kê số đầu sách theo năm xuất bản
&b89
k
89-
w"
("
%'89-
"'89-)
Z-wx4889
"4k\q89
-View :thống kê số đầu sách theo nhà xuất bản
&b9
k
9-
w"
("
%'9-
"'"")
Z-wx489
"4k\q9
-View: thống kê số đầu sách theo tác giả
&b%
%
w"
("
%'%
"'"")
Z-wx48%
"4k\q%

--View:Sách chưa bao giờ được mượn
&b"
W]w
("W
b-yW-W
(-
b4W]!-]
)
Z-wx48"
"4k&q"
3.3. Xóa các đầu sách năm xuất bản trước năm 1990
- Dùng rollback để không mất dữ liệu
%)
"(
b
("
b89-#!//
)
"("
b89-#!//)
w(")
)
3.4.Function
ff(e2T8-4s.TMWHB-4T
("%z"%&
%
"z!)
(9
(
b"%!z"%"14
z!)
z)
")
%
Y`]"%*"%0*)
ff(-2T8-4WI<Z:J8Br-4-H,-=Ts.T
(4z"%&
%
"z)
z!w
(
b"%!z"%

"1!-%"
"'1!'4%"
z)
")
%
"(Y`]4)
Y`]4*"%0*)
ff(-e2T8-4WHsu-_sBr8Br
("z&
%
"z"!)
(9
(
b!z
z"!)
z")
")
%
"(Y`]")
Y`]"*&*")
3.5. Thủ tục
ffT-P-I<e2s.T8BrvH=
""%L
%
"Y]"%Y]"%Y]"Y]"
("%Y
Vk8Y]"%!k8]"%
bk8]14"k8]14#%")
")
%
"""%L
9"%L)
ffT-PWI<WHs8Br-s.T
"""%
%
Y]"%
Y]"%
-]"
("%Y
Vk8Y]"%!k8]"%
V-k8]!-]
bk8]14
%'Y]"%Y]"%
"'"")

")
%
""""%
9""%)
3.6.Trigger
ff44p:<88Br8[2<sNWHvH=
%%L
"(
%
)
(9
(W4-Y
Vk8
k8]"%!]"%
bk8]14
"k8]14#%""
%
"z"%)
z"%!]"%
(W4-Y
Vk8
k8]"%!]"%
bk8]14
"k8]14#%"")
*7.TtWsNWHvH=B-4T{IsBrkXk8Br
WH8[]*
Cz"%)
)
")
"%11414
"%11414
(W4-Y)
")
%
"%%L)
ffe kq
"%114
&*"%0**00$ff0E**00$f0f*)
ff44Qs.`HvH=e-4TWH
%%4L
("
%
)
(9

(W4-Y
VYZ-YY]!Y]
b]14
"]14 Y]14
%
*T`Hp2<8Brsu-4T`FvH={*)
")
"
%
ffe kq
"14!*00$ff0/*b!0
ff44pI<s$s:JWHeH-4k2<8Br
%%"$"
("
%
)
(9
(
b(W4-Y
%'
&%" $
%
*IsBr8BrvH$s:JWHeH-4k2<{*C
)
)
"
"
%
"%114
&*"%0**00$ff0E**00$f0f*)
%
&
*0**Br`ITW+10E|*
*6***
*?***)
3.7.Tạo Index
4-"9}"%}14"%14ZY
114)
4-"9}11ZY"%
1414)
4-"9}ZY
)
ff, danh sáchYy
k}ZkYy
k}ZkYy

THIẾT KẾ TRÊN MONGODB
Phần 1:Sử dụng database:use <tên database> và thêm document vào từng collection
Bấm Tải xuống để xem toàn bộ.