TRƯỜNG ĐẠI HỌC XÂY DỰNG HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO ĐỒ ÁN HỆ CƠ SỞ DỮ LIỆU
Đề tài:
THIẾT KẾ CƠ SỞ DỮ LIỆU
VỀ TINY COLLEGE VÀ TRANSCO
Giảng viên hướng dẫn:
Đào Thị Ngọc Hân
STT nhóm: 2
Sinh viên thực hiện:
Phạm Huy Hưng
Hà Nội 02-2023
Đề tài:
THIẾT KẾ CƠ SỞ DỮ LIỆU
VỀ TINY COLLEGE VÀ TRANSCO
Giảng viên hướng dẫn: Đào Thị Ngọc Hân
Mục lục
Contents
Mục lục.............................................................................................................................. 2
Danh mục hình vẽ............................................................................................................3
A: Đề Tài Tiny College....................................................................................................5
1. Mơ tả hệ thống..........................................................................................................5
2. Các thực thể và mối quan hệ....................................................................................5
2.1 Quy tắc nghiệp vụ..................................................................................................5
2.2 Các thực thể........................................................................................................... 6
2.3 Các mối quan hệ giữa các thực thể.......................................................................9
2.4 Xác định các khóa cho thực thể...........................................................................12
2.5 Sơ đồ ERD...........................................................................................................13
3. Cấu trúc các bảng...................................................................................................15
4. Sơ đồ quan hệ..........................................................................................................20
5. Danh sách truy vấn cơ bản.....................................................................................20
B: Đề Tài TransCo.........................................................................................................25
1. Mô tả hệ thống........................................................................................................25
2. Các thực thể và mối quan hệ..................................................................................26
3. Cấu trúc các bảng...................................................................................................32
4. Sơ đồ quan hệ..........................................................................................................37
5. Danh sách truy vấn cơ bản.....................................................................................37
C: Tài Liệu Tham Khảo.................................................................................................39
Danh mục hình vẽ
Hình A.1: sơ đồ ERD dạng Crow’foot của Tiny College
Hình A.2: sơ đồ ERD dạng Chen của Tiny College
Hình A.3: cấu trúc bảng của SCHOOL
Hình A.4: cấu trúc bảng của DEPARTMENT
Hình A.5: cấu trúc bảng của PROFESSOR
Hình A.6: cấu trúc bảng của COURSE
Hình A.7: cấu trúc bảng của STUDENT
Hình A.8: cấu trúc bảng của SEMESTER
Hình A.9: cấu trúc bảng của ROOM
Hình A.10: cấu trúc bảng của BUILDING
Hình A.11: sơ đồ quan hệ của Tiny College
Hình B.1: sơ đồ Crow’foot của BASE và TRUCK
Hình B.2: sơ đồ Crow’foot của BASE và BILL
Hình B.3: sơ đồ Crow’foot của TRUCK và DRIVER.
Hình B.4: sơ đồ Crow’foot của TRUCK, REPORT và INCIDENT.
Hình B.5: sơ đồ Crow’foot của RATE, BILL và CUSTOMER
Hình B.6: sơ đồ Crow’foot của TRUCL, BILL và TRUCK_BILL
Hình B.7: sơ đồ ERD dạng Crow’foot của TransCo
Hình B.8: sơ đồ ERD dạng Chen của TransCo
Hình B.9: cấu trúc bảng BASE
Hình B.10: cấu trúc bảng TRUCK
Hình B.11: cấu trúc bảng TYPE
Hình B.12: cấu trúc bảng DRIVER
Hình B.13: cấu trúc bảng INCIDENT
Hình B.14: cấu trúc bảng REPORT
Hình B.15: cấu trúc bảng RATE
Hình B.16: cấu trúc bảng CUSTOMER
Hình B.17: cấu trúc bảng BILL
Hình B.18: cấu trúc bảng TRUCK_BILL
Hình B.19: sơ đồ quan hệ của TransCo
A: Đề Tài Tiny College
1. Mô tả hệ thống
Để quản lý một trường cao đẳng một cách hiệu quả ta cần xây dựng một hệ thống lưu trữ
và quản lý thông tin của trường.
Thông tin cơ bản cần lưu trữ
Lưu trữ thông tin về từng khoa bộ, từng bộ môn
Lưu thông tin về giảng viên và sinh viên trong trường
Lưu trữ thơng các khóa học, lớp học
Khai thác dữ liệu cơ bản
Truy xuất thông tin của các đối tượng được lưu trữ
Thống kê điểm của sinh viên
Truy xuất thông tin từng thể hiện của đối tượng được lưu trữ
2. Các thực thể và mối quan hệ
2.1 Quy tắc nghiệp vụ
Tiny College (TC) được chia thành nhiều trường: kinh doanh nghệ thuật và khoa học,
giáo dục, và khoa học ứng dụng.
Mỗi trường được quản lý bởi một giáo sư
Một trường chỉ có duy nhất một giáo sư quản lý, và một giáo sư không cần phải là quản
lý của bất cứ trường nào. Do đó liên kết 1:1 tồn tại giữa giáo sư và trường
Mỗi trường bao gồn một vài khoa. Mặt khác, mỗi khoa chỉ thuộc về một trường duy nhất
Mỗi bộ khoa có thể cung cấp nhiều khóa học, cũng có thể khơng cung cấp khóa học nào
như là một khoa chỉ dành cho nghiên cứu nó sẽ khơng cung cấp khóa học nào; do đó thực
thể COURSE là tùy ý với thực thể DEPARTMENT
Lớp học là một phần của khóa học. Nghĩa là một bộ mơn có thể cung cấp một vài lớp học
của cùng khóa học. Mỗi lớp học là được dạy bởi một giảng viên tại thời gian và địa điểm
được cho
Mỗi lớp là được tạo trong một học kỳ. Học kỳ xác định năm và thời hạn lớp sẽ được cung
cấp. Thời gian này có thể khác với thời gian thực tế sinh viên thực sự tham gia vào lớp
học
Mỗi bộ mơn phải có một hoặc nhiều giáo sư. Duy nhất một giáo sư là quản lý khoa, và
khơng có giáo sư nào được yêu cầu chấp nhận vị trí chủ tọa
Mỗi giáo sư có thể dạy tối đa bốn lớp; mỗi lớp là một phần của khóa học. Một giáo sư có
thể có hợp đồng nghiên cứu và khơng dạy lớp nào
Một sinh viên có thể tham gia một vài lớp học nhưng lớp phải trong giai đoạn đăng ký.
Nếu một lớp tồn tại nhưng khơng có sinh viên nào tham gia vào, nghĩa là thực thể
CLASS không xuất hiện trong bảng ENROLL
Mỗi khoa có một vài hoặc nhiều sinh viên, môn học chuyên ngành của sinh viên là được
cung cấp bởi khoa. Tuy nhiên mỗi sinh viên chỉ có một chuyên ngành do đó được liên kết
với một bộ mơn duy nhất
Mỗi sinh viên có một người hướng dẫn trong bộ mơn của sinh viên đó; mỗi người hướng
dẫn hướng dẫn một vài sinh viên. Người hướng dẫn cũng là giáo sư nhưng không phải tất
cả giáo sư đều hướng dẫn sinh viên
Lớp học là được dạy trong phòng học, mỗi phòng nằm trong một tòa nhà. Một tịa nhà có
thể chứa nhiều phịng học.
2.2 Các thực thể
● SCHOOL: Mỗi trường được quản lý bởi một mã trường, một tên trường và được
quản lý bởi một giáo sư được xác định bằng mã giáo sư. Chi tiết các thuộc tính:
o SCHOOL_CODE: mã trường
o SCHOOL_NAME: tên trường
o PROF_NUM: mã giáo sư quản lý trường
● PROFESSOR: Mỗi giáo sư thì được quản lý bởi mã giáo sư, chuyên môn, thứ
hạng, họ tên đầy đủ bao gồm tên, họ, và tên đệm, email. Chi tiết các thuộc tính:
o PROF_CODE: mã giáo sư
o PROF_SPECIALTY: mô tả chuyên môn của giáo sư
o PROF_RANK: mô tả thứ hạng của giáo sư
o PROF_LNAME: họ của các giáo sư
o PROF_FNAME: tên của các giáo sư
o PROF_INITIAL: tên đệm của các giáo sư (thường là một chữ cái đầu tiên
trong tên đệm)
o PROF_EMAIL : email liên hệ
● DEPARTMENT: Mỗi trường thì chia ra thành các khoa, mỗi khoa được quản lý
bởi mã khoa, tên khoa và mỗi khoa sẽ thuộc vào một trường và được quản lý bởi
một giáo sư. Ngoài ra mỗi giáo sư thì sẽ thuộc vào một khoa nhất định.
o DEPT_CODE: mã khoa
o DEPT_NAME: tên khoa
o SCHOOL_CODE: tên trường mà khoa đó trực thuộc
o PROF_NUM: mã giáo sư quản lý khoa
● COURSE: Các khóa học được quản lý bởi mã khóa học, tiêu đề khóa học, mơ tả
khóa học, trạng thái cơng nhận của khóa học. Mỗi khóa học thì được tạo ra từ các
khoa. Chi tiết mơ tả các thuộc tính của đối tượng:
o CRS_CODE: mã khóa học
o DEPT_CODE: mã khoa tổ chức khóa học
o CRS_TITLE: tiêu đề khóa học (có thể hiểu là tên khóa học)
o CRS_DESCRIPTION: mơ tả khóa học
o CRS_CREDIT: số tín chỉ được cơng nhận của khóa học sau khi hồn thành
khóa học (hiểu đơn giản là số tín chỉ).
● SEMESTER: Mỗi học kỳ thì được quản lý bởi mã học kỳ, năm diễn ra học kì,
thời hạn của học kì , ngày bắt đầu và kết thúc của học kì. Chi tiết về các thuộc tính
của đối tượng được mô tả như sau:
o SEMESTER_CODE: mã học kỳ
o SEMESTER_YEAR: năm học kì đó diễn ra
o SEMESTER_TERM: khoảng thời gian mà học kỳ đó diễn ra
o SEMESTER_START_DATE: ngày bắt đầu
o SEMESTER_END_DATE: ngày kết thúc
● CLASS: Các lớp thì được quản lý bởi mã lớp, thời gian diễn ra của lớp học, mã
khóa học của lớp đó, mã giáo sư phụ trách dạy, lớp học thì được tổ chức dạy tại
một phịng học, lớp học đó thì được tổ chức tại một học kỳ nhất định. Các sinh
viên thì có thể đăng kí vào một lớp được tổ chức bởi một khoa, trạng thái đăng ký
được quản lý bằng ngày đăng ký và khóa đăng kí , ngồi ra để ghi nhận xem sinh
viên nào đăng ký ta có thêm mã sinh viên để quản lý và mã lớp học. Chi tiết các
mô tả về thuộc tính của đối tượng được trình bày dưới đây:
o CLASS_CODE: mã lớp học
o CLASS_SECTION: số sinh viên tối đa
o CLASS_TIME: thời gian mà lớp học diễn ra
o CRS_CODE: mã khóa học mà lớp học đó được tổ chức
o PROF_NUM: mã giáo sư phụ trách dạy lớp đó
o ROOM_CODE: mã phòng học tổ chức lớp học
o SEMESTER_CODE: mã học kỳ mà lớp học đó được tổ chức
● ROOM: Các lớp học thì được tổ chức dạy tại một phòng học , thời gian diễn ra
của lớp học và để khơng có trường hợp nhiều hơn một lớp học diễn ra trong một
phòng học tại cùng một thời điểm, mã khóa học của lớp đó, mã giáo sư phụ trách
dạy, lớp học thì được tổ chức dạy tại một phịng học , lớp học đó thì được tổ chức
tại một học kỳ nhất định. Chi tiết các mô tả về thuộc tính được trình bày dưới đây:
o ROOM_CODE: mã phòng học
o ROOM_TYPE: loại phòng học
o BLDG_CODE: mã tòa nhà mà phịng học đó thuộc về.
● STUDENT: Các sinh viên thì được quản lý bởi mã sinh viên, tên đầy đủ của sinh
viên bao gồm tên, họ, và tên đệm, email của sinh viên mỗi sinh viên thì chỉ thuộc
một khoa Mỗi sinh viên thì có một cố vấn là một giáo sư và được xác định bằng
mã của giáo sư đó. Chi tiết các mơ tả về thuộc tính được trình bày dưới đây:
o STU_NUM: mã sinh viên
o DEPT_CODE: mã khoa của sinh viên
o STU_LNAME, STU_FNAME,STU_INITIAL: lần lượt là các mô tả về tên
của sinh viên.
o STU_EMAIL: email liên hệ của sinh viên
o PROF_NUM: mã giáo sư là cố vấn học tập của sinh viên
● BUILD: các lớp được tổ chức dạy ở các phòng, các phòng học được quản lý bằng
mã phòng, loại phòng, và mã tòa nhà; mỗi phịng thì sẽ thuộc vào một tịa nhà và
các tòa nhà được quản lý bằng mã tòa nhà, tên tịa nhà, địa điểm của tịa nhà. Chi
tiết về mơ tả của các thực thể được trình bày như sau:
o BLDG_CODE: mã tòa nhà
o BLDG_NAME: tên tòa nhà
o BLDG_LOCATION: địa chỉ của tòa nhà
2.3 Các mối quan hệ giữa các thực thể
Ta có các mối quan hệ, các thực thể tham gia và mơ tả chi tiết được trình bày lần lượt
dưới đây:
Tên quan hệ: is dean of (là hiệu trưởng của)
● Các thực thể tham gia: PROFESSOR và SCHOOL
● Mô tả chi tiết: Mỗi trường thì được quản lý bởi một giáo sư, và có nhiều giáo sư
quản lý các trường, nhưng một giáo sư thì khơng bắt buộc phải quản lý một trường
nào cả. Vì vậy đây là mối quan hệ tùy chọn PROFESSOR(1,1) : SCHOOL (0,1).
Tên quan hệ: operates (vận hành)
● Các thực thể tham gia: SCHOOL và DEPARTMENT
● Mô tả chi tiết: Mỗi trường chia ra làm các khoa riêng biệt, một trường có thể chỉ là
một khoa và cũng có thể là nhiều khoa mà ta chưa xác định, một khoa chỉ có thể
thuộc vào một trường xác định. Vì vậy mối quan hệ giữa hai thực thể là
SCHOOL(1:1) : DEPARTMENT (1,*)
Tên quan hệ: chairs (quản lý, chủ trì)
● Các thực thể tham gia: PROFESSOR và DEPARTMENT
● Mơ tả chi tiết: Mỗi khoa chỉ có một giáo sư được chỉ định là trưởng khoa,một giáo
sư không bắt buộc phải là trưởng khoa của bất kì khoa nào, vì vậy đây là mối quan
hệ tùy chọn PROFESSOR (1,1) : DEPARTMENT (0,1).
Tên quan hệ: employs (là nhân viên)
● Các thực thể tham gia: PROFESSOR và DEPARTMENT
● Mô tả chi tiết:Mỗi giáo sư thì chỉ thuộc vào một khoa, một khoa có nhiều giáo sư.
Tên quan hệ: offers ( cung cấp )
● Các thực thể tham gia: DEPARTMENT và COURSE
● Mô tả chi tiết: Mỗi khoa cung cấp các khóa học, mỗi khóa học thì được tổ chức
bởi một khoa duy nhất, có một ngoại lệ là một số khóa học có thể được chỉ định là
“chỉ dành cho nghiên cứu” thì khóa học đó sẽ khơng được cung cấp, vì vậy đây là
mối quan hệ tùy chọn DEPARTMENT (1:1) : COURSE(0,*).
Tên quan hệ: generates ( tạo ra )
● Các thực thể tham gia: CLASS và COURSE
● Mơ tả chi tiết: Các khóa học thì tạo ra các lớp học, một khóa học có thể có nhiều
lớp học nhưng một lớp học chỉ thuộc duy nhất một khóa học, ngồi ra một khóa
học có thể được tạo ra và nằm trong danh mục khóa học của Tiny College nhưng
trong một học kỳ nhất định, khóa học đó khơng được tổ chức, do đó các lớp học
cũng sẽ khơng được tổ chức. Vì vậy quan hệ giữa hai thực thể là CLASS (0,*):
COURSE(1,1).
Tên quan hệ: includes ( bao gồm )
● Các thực thể tham gia: SEMESTER và CLASS
● Mơ tả chi tiết: Một học kì nhất định sẽ có nhiều lớp học và mỗi lớp học được tổ
chức trong một học kì nhất định, ngồi ra một học kì có thể khơng có bất kì lớp
học nào (ví dụ như kì nghỉ hè). Vì vậy đây là mối quan hệ tùy chọn
SEMESTER(1,1) : CLASS (0,*).
Tên quan hệ: teaches ( giảng dạy )
● Các thực thể tham gia: PROFESSOR và CLASS
● Mô tả chi tiết: Mỗi giáo sư có thể dạy tối đa bốn lớp. Một giáo sư cũng có thể có
hợp đồng nghiên cứu và khơng dạy lớp nào cả. Vậy nên quan hệ giữa hai thực thể
là tùy chọn PROFESSOR (1,1) : CLASS(0,*).
Tên quan hệ: enrolls
Các thực thể tham gia: STUDENT và CLASS
Mô tả chi tiết: một sinh viên có thể đăng kí nhiều lớp học(tối đa là 6) và các lớp
học đó là khác nhau (không thể đăng ký một lớp học 2 lần trong một học kỳ nhất
định), một lớp học có thể được đăng ký bởi nhiều sinh viên và tối đa là 35, tuy
nhiên nếu một lớp học khơng có sinh viên nào đăng ký khi đã hết thời hạn đăng ký
thì lớp học đó sẽ bị hủy bỏ và không được đặt trong trạng thái “enroll”. Quan hệ
giữa hai thực thể STUDENT và CLASS là M:N và chúng ta có thể cần phải biểu
diễn bằng hai quan hệ 1:M thông qua một thực thể trung gian là ENROLL, thực
thể ENROLL là thực thể yếu vì nó có khóa chính được tạo thành từ sự kết hợp
giữa hai khóa chính của hai thực thể STUDENT và CLASS. Chi tiết về mối quan
hệ của STUDENT và CLASS với ENROLL sẽ được trình bày ở hai quan hệ sau:
Tên quan hệ: is written in
● Các thực thể tham gia: STUDENT và ENROLL
● Mơ tả chi tiết: một sinh viên có thể đăng kí nhiều lớp học và do đó thực thể
ENROLL có thể ghi nhận một sinh viên nhiều lần, lưu ý rằng nếu một sinh viên đó
đăng ký nhiều lớp học thì học sinh đó chỉ có thể học lớp đó duy nhất một lần trong
một học kỳ nhất định. Ngồi ra một sinh viên có thể khơng đăng ký một lớp học
nào đó (có thể lớp học đó được tổ chức nhưng viên đã học và đạt khóa học đó), lúc
này trạng thái ENROLL sẽ không xuất hiện sinh viên và lớp tương ứng. Do đó ta
có quan hệ STUDENT(1,1) : ENROLL(0,*).
Tên quan hệ: is found in
● Các thực thể tham gia: ENROLL và CLASS
● Mơ tả chi tiết: Một lớp học có thể xuất hiện nhiều lần trong ENROLL và có thể
nếu hết khoảng thời gian đăng kí, lớp học đó khơng có sinh viên nào đăng kí vào
thì nó sẽ bị hủy, lúc này ENROLL sẽ khơng ghi nhận lớp học đó vào. Ta có quan
hệ CLASS(1,1) : ENROLL(0,*).
Tên quan hệ: has
● Các thực thể tham gia: DEPARTMENT và STUDENT
● Mô tả chi tiết: Mỗi khoa có một hoặc nhiều sinh viên theo chuyên ngành của khoa
đó. Tuy nhiên, mỗi sinh viên chỉ có một chuyên ngành duy nhất và do đó có liên
quan với một khoa duy nhất. Tuy nhiên, trong môi trường Tiny College có thể ít
nhất là trong một học kì đối với một sinh viên khơng chọn theo một chun ngành
chính nào đó. Một sinh viên như vậy sẽ khơng được liên kết với một khoa. Do đó,
quan hệ giữa hai thực thể là tùy chọn DEPARTMENT(0,1) : STUDENT(0,*).
Tên quan hệ: advises
Các thực thể tham gia: PROFESSOR và STUDENT
Mơ tả chi tiết: Mỗi sinh viên có một cố vấn trong khoa của mình; mỗi cố vấn tư
vấn cho một số sinh viên. Một cố vấn cũng là một giáo sư, mỗi giáo sư có thể tư
vấn cho nhiều sinh viên, nhưng không phải tất cả các giáo sư tư vấn cho sinh viên ,
vì vậy quan hệ là tùy chọn giữa hai thực thể PROFESSOR(1,1) : STUDENT(0,*).
Tên quan hệ: is used by
Các thực thể tham gia: CLASS và ROOM
Mô tả chi tiết: mỗi lớp học thì được tổ chức và dạy ở một phịng nhất định, một
phịng có thể tổ chức nhiều lớp học trong các khoảng thời gian khác nhau trong
ngày, ngoài ra một lớp học có thể khơng được tổ chức trong một phịng học nào cả
(có thể là thực hành). Do đó ta có quan hệ giữa hai thực thể CLASS (0,*) :
ROOM(1,1).
Tên quan hệ: contains
Các thực thể tham gia : BUILDING và ROOM
Mơ tả chi tiết : Một tịa nhà có chứa một hoặc nhiều phòng học mà một phòng học
chỉ thuộc một tịa nhà nhất định, ngồi ra một tịa nhà có thể khơng chứa phịng
nào được sử dụng để dạy học. Do đó ta có quan hệ giữa hai thực thể
BUILDING(1,1): ROOM(0,*).
Các Mối Quan Hệ Cần Lưu Trữ:
Entity
Relationship
Connectivity
Entity
SCHOOL
operates
1:M
DEPARTMENT
DEPARTMENT
has
1:M
STUDENT
DEPARTMENT
employs
1:M
PROFESSOR
DEPARTMENT
offers
1:M
COURSE
COURSE
generates
1:M
CLASS
SEMESTER
includes
1:M
CLASS
PROFESSOR
is dean of
1:1
SCHOOL
PROFESSOR
chairs
1:1
DEPARTMENT
PROFESSOR
teaches
1:M
CLASS
PROFESSOR
advises
1:M
STUDENT
STUDENT
enrolls in
M:N
CLASS
BUILDING
contains
1:M
ROOM
ROOM
is used for
1:M
CLASS
Note: ENROLL is the composite entity that implements the M:N relationship
“STUDENT enrolls in CLASS.”
2.4 Xác định các khóa cho thực thể
Bảng các khóa chính, khóa phụ
Thực thể
Khóa chính (PK)
Khóa phụ (FK)
PROFESSOR
PRO_NUM
DEPT_CODE
SCHOOL
SCHOOL_CODE
PROF_NUM
SEMESTER
SEMESTER _CODE
DEPARTMENT
DEPT_CODE
SCHOOL_NAME
PROF_NUM
COURSE
CRS_CODE
DEPT_CODE
CRS_CODE
CLASS
CLASS_CODE
PROF_NUM
ROOM_CODE
SEMESTER_CODE
CLASS_CODE
CLASS_CODE
STU_NUM
STU_NUM
ROOM
ROOM_CODE
BLDG_CODE
STUDENT
STU_NUM
ENROLL
DEPT_CODE
PROF_NUM
BUILDING
BLDG_CODE
2.5 Sơ đồ ERD
Hình A.1: sơ đồ ERD dạng Crow’foot của Tiny College
Hình A.2: sơ đồ ERD dạng Chen của Tiny College
3. Cấu trúc các bảng
Data dictionary
DATA DICTIONARY
TABLE NAME
ATTRIBUTE NAME
CONTNETS
TYPE
FORMAT
RANG
E
REQUIRE
D
PK
OR
FK
REFERENCED
PROFESSOR
PROF_NUM
NVARCHAR(100
)
NVARCHAR(10)
Xxxx
Professor
last name
Professor
first name
Professor
email
School
code
NVARCHAR(100
)
NVARCHAR(100
)
NVARCHAR(100
)
NVARCHAR(10)
Xxxxx
Y
Xxxxx
Y
x
99999
Y
School
name
Professor
account
num
Departmen
t code
NVARVHAR(100
)
NVARCHAR(10)
Xxxxx
NVARCHAR(10)
99999
Departmen
t name
School
code
NVARCHAR(100
)
NVARCHAR(10)
Xxxxx
Professor
account
num
Semester
code
NVARCHAR(10)
99999
NVARCHAR(10)
99999
Semester
Year
Semester
term
Semester
start date
Semester
end date
Course
code
Date
dd-mmm-yyyy
NVARCHAR(10)
99999
Date
dd-mmm-yyyy
Date
dd-mmm-yyyy
NVARCHAR(10)
99999
DEPT_CODE
Departmen
t code
NVARCHAR(10)
99999
CRS_TITLE
NVARCHAR(100
)
NVARCHAR(100
)
FLOAT
Xxxxx
Y
Xxxxx
Y
CRS_CREDIT
Course
name
Course
information
Tuition fee
CLASS_CODE
Class code
NVARCHAR(10)
99999
CLASS_SECTION
Section
NVARCHAR(100
)
Xxxxx
PROF_EMAIL
SCHOOL_CODE
SCHOOL_NAME
PROF_NUM
DEPT_CODE
DEPT_NAME
SCHOOL_CODE
PROF_NUM
SEMESTER_CODE
SEMESTER_YEAR
SEMESTER_TERM
SEMESTER_START_DAT
E
SEMESTER_END_DATE
CRS_CODE
CRS_DESCRIPTION
CLASS
DEPARTMEN
T
Chuyên
môn
Professor
rank
PROF_FNAME
COURSE
FK
99999
PROF_LNAME
SEMESTER
Y
NVARCHAR(10)
PROF_RANK
DEPARTMEN
T
TABLE
99999
PROF_SPECIALTY
SCHOOL
FK
PK
NVARCHAR(10)
DEPT_CODE
99999
99999
99999
10000
99999
10000
99999
Y
Professor
account
num
Departmen
t code
Y
00001
10000
10000
99999
Y
Y
PK
Y
10000
99999
10000
99999
Y
FK
Y
PK
PROFESSOR
Y
10000
99999
10000
99999
10000
99999
Y
FK
SCHOOL
Y
FK
PROFESSOR
Y
PK
Y
10000
99999
10000
99999
Y
PK
Y
FK
9,999,999.99
10000
99999
Y
Y
PK
DEPARTMEN
T
CLASS_TIME
TIME
CRS_CODE
Course
code
NVARCHAR(10)
99999
PROF_NUM
Professor
account
num
Room code
NVARCHAR(10)
99999
NVARCHAR(10)
99999
SEMESTER_CODE
Semester
code
NVARCHAR(10)
99999
CLASS_CODE
Class code
NVARCHAR(10)
99999
STU_NUM
Student
code
NVARCHAR(10)
99999
ENROLL_DATE
Enroll date
DATE
STU_NUM
Student
num
NVARCHAR(10)
99999
DEPT_CODE
Departmen
t code
NVARCHAR(10)
99999
STU_LNAME
NVARCHAR(100
)
NVARCHAR(100
)
NVARCHAR(100
)
FLOAT
Xxxxx
Y
Xxxxx
Y
x
Y
NVARCHAR(10)
99999
ROOM_CODE
Student
last name
Student
first name
Student
email
So du chua
dong trong
tai khoan
Professor
account
num
Room code
NVARCHAR(10)
99999
ROOM_TYPE
Room Type
Xxxxx
BLDG_CODE
Building
code
NVARCHAR(100
)
NVARCHAR(10)
BLDG_CODE
Building
code
NVARCHAR(10)
99999
BLDG_NAME
Building
name
Building
Location
NVARCHAR(100
)
NVARCHAR(100
)
Xxxxx
Y
Xxxxx
Y
ROOM_CODE
ENROLL
STUDENT
STU_FNAME
STU_EMAIL
STU_BALANCE
PROF_NUM
ROOM
BUILDING
BLDG_LOCATION
Hình A.3: cấu trúc bảng của SCHOOL
99999
10000
99999
10000
99999
10000
99999
10000
99999
10000
99999
10000
99999
Y
FK
COURSE
Y
FK
PROFESSOR
Y
FK
ROOM
Y
FK
SEMESTER
Y
PK
,
FK
PK
,
FK
CLASS
10000
99999
10000
99999
Y
PK
Y
FK
DEPARTMEN
T
Y
FK
PROFESSOR
Y
PK
10000
99999
10000
99999
Y
STUDENT
Y
10000
99999
10000
99999
Y
FK
Y
PK
BUILDING
Hình A.4: cấu trúc bảng của DEPARTMENT
Hình A.5: cấu trúc bảng của PROFESSOR
Hình A.6: cấu trúc bảng của COURSE
Hình A.7: cấu trúc bảng của STUDENT
Hình A.8: cấu trúc bảng của SEMESTER
Hình A.9: cấu trúc bảng của ROOM
Hình A.10: cấu trúc bảng của BUILDING
4. Sơ đồ quan hệ
Hình A.11: sơ đồ quan hệ của Tiny College
5. Danh sách truy vấn cơ bản
5.1 Xuất ra mã giáo viên + tên + tên bộ môn giáo viên đó dạy
SELECT GV.PROF_NUM, GV.PROF_FNAME, GV.PROF_LNAME, BM.CRS_TITLE
FROM DBO.PROFESSOR AS GV, DBO.COURSE AS BM
WHERE GV.DEFT_CODE = BM.DEPT_CODE