Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 18

Review questions

1. Describe the three-schema architecture.


Trả lời:
Kiến trúc 3 mức của một hệ CSDL.
+ Theo kiến trúc ANSI-PARC, một CSDL có 3 mức biểu diễn + Kiến trúc 3 mức
giúp tách biệt các ứng dụng người dùng với CSDL vật lý. Mức vật lý: Sử dụng mô
hình dữ liệu vật lý để mô tả cấu trúc lưu trữ vật lý của CSDL
Mức logic/quan niệm: Dấu đi chi tiết về cấu trúc lưu trữ vật lý. Dùng mô hình dữ
liệu logic để mô tả cái gì được lưu trữ trong CSDL và mối quan hệ giữa các dữ
liệu đó.
Mức ngoài/ view: Mô tả một phần của CSDL cho một nhóm người dùng quan tâm
và dấu đi phần còn lại của CSDL khỏi nhóm người dùng đó.
2. Define the following terms and give an example for each term: an attribute, the
domain of an attribute, a relation schema, a relation, n-tuple, degree of a
relation, a relationship, a relation instance (state), a relational database schema,
a relational database state, integrity constraints.
Trả lời:
- Thuộc tính: chỉ các loại thông tin mô tả 1 loại đối tượng cụ thể nào đó(có thể là
trừu tượng).
vd:thuộc tính của HoTen:char.
- Miền của thuộc tính: là tập hợp các giá trị mà dữ liệu có thể lấy, kí hiệu là
MGT(), Dom().
vd:MGT(Giới Tính)={“Nam”;”Nữ”}.
- Lược đồ quan hệ: là tập hữu hạn các thuộc tính
Vd: SINHVIEN(HoTen,MSSV,Ngaysinh,GioiTinh,DiemTB). - Quan hệ: một quan
hệ r định nghĩa trên lược đồ quan hệ R={A1,…,An} là tập con bất kì của tích
Descartes các miền giá trị cảu các thuộc tính trong lược đồ quan hệ
vd: D1={1,3},D2={2,4},D3={5,6} thì tích đề-các D1xD2xD3 là: D1xD2xD3={(1,2,5),
(1,2,6),(1,4,5),(1,4,6),(3,2,5),(3,2,6),(3,4,5),(3,4,6)} và tập con bất kì trong đây gọi
là quan hệ giữa D1, D2, D3
Bộ:1 bộ được thành lập dựa trên các thuộc tính của lược đồ quan hệ Q®. Bộ giá trị
-

cũng thường được gọi là bản ghi(record) hoặc dòng của Bảng(Row) vd: với lược
đồ quan hệ SINHVIEN ở ví dụ trên thì (20110057,Võ Quang
Hưng ,16/02/2002,Nam,8.51 ) là 1 bộ được thành lập dựa trên các thuộc tính

của lược đồ quan hệ SINHVIEN.

- Bậc (ngôi) của quan hệ là số thuộc tính của lược đồ quan hệ tương ứng ví dụ:
SINHVIEN(HoTen,MSSV,Ngaysinh,GioiTinh,DiemTB) có bậc là 5.
3. Why are tuples in a relation not ordered?
- Vì trong 1 bộ sẽ có 1 khóa chính để phân biệt các bộ còn lại nên không có bộ nào
trùng nhau vì thế việc sắp xếp là không quan trọng
4. Why are duplicate tuples not allowed in a relation?
- Nếu như trùng lặp nhau có thể khiến cho các dữ liệu bị sai vì lặp lại dữ liệu vì thế
mới có khóa chính để bắt buộc các dữ liệu không được giống nhau hoàn toàn
5. What is the difference between a key and a superkey?
- Khóa là 1 tập các thuộc tính để phân biệt các bộ với nhau và trong các thuộc tính
đó ta chọn 1 thuộc tính làm khóa chính và khóa chính không được để trống
6. Discuss the entity integrity and referential integrity constraints. Why is each
considered important?
- Toàn vẹn thực thể và toàn vẹn tham chiếu là hai dạng toàn vẹn dữ liệu đặc biệt
quan trọng trong cơ sở dữ liệu quan hệ. ... Nếu không có sự đảm bảo về tính
toàn vẹn của hai loại này, dữ liệu sẽ bị giảm hoặc bị trùng lặp. Thực thể và tính
toàn vẹn tham chiếu rất quan trọng trong cơ sở dữ liệu quan hệ
Exercises.
1. Given one possible database state for the COMPANY
relational database schema as follows:

lOMoARcPSD|22127631
- Suppose that each of the following Update operations is applied directly to the
database state shown above. Discuss all integrity constraints violated by each
operation, if any, and the different ways of enforcing these constraints.
lOMoARcPSD|22127631

a. Câu a: Câu lệnh thực hiện chèn 1 dòng vào bảng EMPLOYEE với dữ liệu
tương ứng từ trái sang phải
ta thấy bảng này có các RBTV:
-về miền giá trị: tất cả các dữ liệu trong câu lệnh đều thỏa RBTV này tương ứng
với các cột.
-ràng buộc khóa ngoại(ràng buộc tham chiếu):
1.cột Super_Ssn là khóa ngoại tham chiếu đến cột Ssn và trong lệnh insert ở trên
người có mã “888665555” có trong bảng. Vậy ràng buộc này thỏa 2. Cột Dno là
khóa ngoại, tham chiếu đến cột Dnumber của bảng DEPARTMENT. Trong câu
lệnh insert trên giá trị cột Dno đc chèn là 1 có trong bảng DEPARTMENT nên
ràng buộc này thỏa
Kết luận:- câu lệnh trên có thể thực hiện mà không vi phạm ràng buộc b. Câu
b:Câu lệnh này thực hiện chèn 1 dòng vào bảng PROJECT với dữ liệu tương ứng
từ trái sang phải, ta xét 2 bảng PROJECT và DEPARTMENT Ta thấy 2 bảng này
có các RBTV:
- về miền giá trị( đối với PROJECT):tất cả đều thỏa tương ứng các cột. - RB về
khóa ngoại:cột Dnum bảng PROJECT là khóa ngoại tham chiếu với cột Dnumber
bảng DEPARTMENT. Câu lệnh trên cho thấy giá trị cột Dnum là 2 nhưng khi tra
vào cột Dnumber bảng DEPARTMENT thì lại không có. Vậy câu lệnh không thực
hiện được vì vi phạm ràng buộc

Kết luận: muốn thực hiện được dòng lệnh này ta phải chèn thêm dòng dữ liệu có
cột Dnumber là 2 cho bảng DEPARTMENT.
c. Câu c: Câu lệnh trên thực hiện chèn 1 dòng vào bảng DEPARTMENT với dữ
liệu tương ứng từ trái sang phải
Ta thấy bảng này có các RBTV:
-về miền giá trị: tất cả đều thỏa tương ứng các cột.
-RB về khóa ngoại: câu lệnh trên cho thấy giá trị cột Dnumber là 4 đã có trên bảng
và cột Dnumber lại là khóa chính không được phép trùng nên câu lệnh này không
thực hiện được vì vi phạm ràng buộc.
Kết luận: muốn thực hiện được dòng lệnh này ta phải thay đổi giá trị cột Dnumber
khác 4 để không bị trùng.
d. Câu d: Câu lệnh trên thực hiện chèn 1 dòng vào bảng WORKS_ON với dữ liệu
tương ứng từ trái sang phải, ta xét 2 bảng WORKS_ON và PROJECT Ta thấy 2
bảng này có các RBTV:
-về miền giá trị:tất cả đều thỏa tương ứng các cột của bảng WORKS_ON -RB về
khóa ngoại: cột Pno là khóa ngoại tham chiếu với cột Pnumber của bảng
PROJECT. Theo câu lệnh trên thì giá trị cột Pno là NULL trong khi cột Pnumber
lại không có giá trị đó vì thế lệnh không được thực hiện vì vi phạm ràng buộc Kết
luận: muốn lệnh được thực hiện ta phải thay đổi giá trị NULL của dòng lệnh thành
1 trong các giá trị có sẵn trong cột Pnumber của bảng PROJECT.
e. Câu e: Câu lệnh trên thực hiện chèn 1 dòng vào bảng DEPENDENT với dữ liệu
tương ứng từ trái sang phải.ta xét 2 bảng DEPARTMENT và DEPENDENT Ta
thấy 2 bảng này có các RBTV:
-về miền giá trị:tất cả các dữ liệu trong câu lệnh đều thỏa RBTV này tương ứng với
các cột.
-ràng buộc về khóa ngoại:
1. cột Essn của bảng DEPENDENT là khóa ngoại tham chiếu với cột Ssn bảng
DEPARTMENT. Câu lệnh trên cho giá trị ở cột Essn là “453453453”, có giá trị
trên cột Ssn vì vậy thỏa ràng buộc này.
2. Giá trị “John” ở cột Dependent_name không bị trùng với các giá trị dòng khác
nên ràng buộc này thỏa.
Kết luận: câu lệnh này được thực hiện vì không vi phạm ràng buộc nào. f. Câu f:
Câu lệnh trên thực hiện xóa các bộ có giá trị ở cột Essn là “333445555” ở bảng
WORKS_ON. Ta xét 3 bảng WORKS_ON, EMPLOYEE, PROJECT. Ta thấy 3
bảng này có các RBTV về khóa ngoại:
1. cột Essn bảng WORKS_ON khóa ngoại tham chiếu với cột Ssn với bảng
EMPLOYEE. Theo câu lệnh trên thì xóa các bộ có giá trị “333445555” ở cột

Essn đi thì ở bảng EMPLOYEE vẫn còn giá trị đó vậy nên không vi phạm ràng
buộc.
2. Cột Pno bảng WORKS_ON khóa ngoại tham chiếu với cột Pnumber bảng
PROJECT. Theo câu lệnh trên khi xóa các bộ đó thì cũng không ảnh hưởng đến cột
Pnumber nên không vi phạm ràng buộc.
Kết luận: câu lệnh trên thực hiện được vì không vi phạm ràng buộc g. Câu g: Câu
lệnh trên thực hiện xóa những bộ có giá trị “987654321” ở cột Ssn bảng
EMPLOYEE. Ta xét cả 6 bảng.
Ta thấy 6 bảng này có các RBTV về khóa ngoại:
1. Cột Ssn của bảng EMPLOYEE khóa ngoại tham chiếu với các cột: Mgr_ssn
bảng DEPARTMENT, Essn của bảng WORKS_ON, Essn của bảng
DEPENDENT. Theo câu lệnh trên khi xóa bộ có giá trị “987654321” ở cột Ssn của
bảng EMPLOYEE thì sẽ vi phạm ràng buộc với những cột tham chiếu trên.
2. Cột Dno của bảng EMPLOYEE khóa ngoại tham chiếu với các cột:Dnumber ở
bảng DEPT_LOCATION, Dnumber ở bảng DEPARTMENT, Dnum ở bảng
PROJECT. Theo lệnh trên khi xóa bộ có giá trị “987654321” ở cột Ssn của bảng
EMPLOYEE sẽ không ảnh hưởng đến bảng PROJECT và DEPT_LOCATION
nhưng ảnh hưởng đến bảng DEPARTMENT. Vì thế lệnh này bị vi phạm ràng
buộc.
Kết luận: muốn thực hiện được câu lệnh trên ta phải thay đổi giá trị Mgr_ssn, và
Mgr_start_date ở bảng DEPARTMENT, xóa bộ có giá trị ở cột Essn "987654321”
ở bảng DEPENDENT, xóa các bộ có giá trị ở cột Essn “987654321” ở bảng
WORKS_ON. Sau đó thực hiện lệnh.
h. Câu h : Câu lệnh trên thực hiện xóa bộ có giá trị “ProductX” ở cột Pname bảng
PROJECT. Ta xét bảng PROJECT và WORKS_ON
ta thấy 2 bảng này có các RBTV về khóa ngoại:cột Pnumber ở bảng PROJECT là
khóa ngoại tham chiếu với cột Pno bảng WORKS_ON. Theo câu lệnh trên, xóa bộ
có giá trị cột Pname là “ProductX” sẽ làm mất giá trị “1” ở cột Pnumber vì thế các
bộ có giá trị cột Pno ở bảng WORKS_ON sẽ không có giá trị để tham chiếu vào vì
thế vi phạm ràng buộc
Kết luận:cần phải xóa các bộ có giá trị “1” cột Pno ở bảng WORKS_ON sau đó
mới thực hiện lệnh được.
i. Câu i: Câu lệnh trên thực hiện thay đổi bộ có giá trị ở cột Dnumber là “5” bằng
các giá trị “123456789” và “2007-10-01”.
Ta thấy bảng này có các RBTV:
-về miền giá trị:tất cả giá trị trên câu lệnh trên thỏa RBTV này tương ứng với các
cột.
-ràng buộc về khóa ngoại:không có

Kết luận: ta thực hiện được câu lệnh này vì không vi phạm ràng buộc j. Câu j: Câu
lệnh trên thực hiện thay đổi giá trị “999887777” thành “943775543” của cột Ssn
bảng EMPLOYEE. Ta xét 2 bảng EMPLOYEE và WORKS_OUT. Ta thấy 2 bảng
có các RBTV:
-về miền giá trị:giá trị thay đổi ở câu lệnh trên thỏa RBTV.
-ràng buộc về khóa ngoại: cột Ssn ở bảng EMPLOYEE là khóa ngoại tham chiếu
với cột Essn bảng WORKS_ON. Theo câu lệnh trên thay đổi giá trị cột Ssn từ
“999887777” thành “943775543” bảng EMPLOYEE nhưng tra cột Essn bảng
WORKS_ON vẫn giá trị cũ vì thế câu lệnh bị vi phạm ràng buộc.
Kết luận: để thực hiện câu lệnh ta phải viết thêm câu lệnh thay đổi tương tự với
bảng WORKS_ON.
k. Câuk:Câu lệnh trên thực hiện thay đổi ở bộ
WORKS_ON(‘999887777’,10,10.0). Ta thấy bảng có các RBTV:
-về miền giá trị:giá trị thay đổi ở câu lệnh trên không thỏa RBTV khi thuộc tính ở
cột Pno là số nguyên dương trong khi dữ liệu thay đổi là số thực dương. Kết luận:
để thực hiện câu lệnh ta phải thay đổi thông tin từ “5.0” thành “5”.
- Which of the following operations are not correct? Why? Show the results of the
correct operations:
a. ΠSsn, Fname, Lname, Salary(Employee)

Ssn Fname Lname Salary


12345678 John Smith 30000
9
33344555 Frankli Wong 40000
n
99988777 7 Alicia Zelaya 25000

98765432 1 Jennifer Wallace 43000

66688444 4 Ramesh Naraya 38000


n
45345345 3 Joyce English 25000

88866555 James Borg 55000


5

b. σSex = F and Salary > 30000(Employee)


Fname Mini Lname Ssn Bdate Address Sex Salar Super_snn Dno
t y

Jennife S Wallace 98765432 1941-06- 291 Berry, F 43000 888665555 4


r 1 20 Bellaire,
TX

c. σSex = F and Salary > 30000 (ΠSsn, Fname, Lname, Salary(Employee))


Câu lệnh này đúng về cú pháp nhưng sai về logic vì phép chiếu ở trong ngoặc được thực hiện
trước và cho ra kết quả là một bảng gồm 4 cột Ssn, Fname, Lname, Salary. Sau đó phép chọn
được thực hiện trên bảng kết quả của phép chiếu với điều kiện Sex = F and Salary > 30000.
Nhưng trong bảng kết quả không có cột Sex.

d. ΠSsn, Fname, Lname, Salary (σSex = F and Salary > 30000(Employee))

Ssn Fname Lname Salary


987654321 Jennifer Wallace 43000

e. Department X Dept_Location

Dname Dnumber Mgr_ssn Mgr_start_dat Dnumber Dlocation


e

Research 5 333445555 1998-05-22 1 Houston

Research 5 333445555 1998-05-22 4 Stafford

Research 5 333445555 1998-05-22 5 Bellaire

Research 5 333445555 1998-05-22 5 Sugarland


Research 5 333445555 1998-05-22 5 Houston

Administratio 4 987654321 1995-01-01 1 Houston


n

Administratio 4 987654321 1995-01-01 4 Stafford


n

Administratio 4 987654321 1995-01-01 5 Bellaire


n

Administratio 4 987654321 1995-01-01 5 Sugarland


n

Administratio 4 987654321 1995-01-01 5 Houston


n

Headquarters 1 888665555 1981-06-19 1 Houston

Headquarters 1 888665555 1981-06-19 4 Stafford

Headquarters 1 888665555 1981-06-19 5 Bellaire

Headquarters 1 888665555 1981-06-19 5 Sugarland

Headquarters 1 888665555 1981-06-19 5 Houston

f. Department |X| Dept_Location

Dname Dnumber Mgr_ssn Mgr_start_date Dlocation

Research 5 333445555 1998-05-22 Bellaire

Research 5 333445555 1998-05-22 Sugarland

Research 5 333445555 1998-05-22 Houston

Administration 4 987654321 1995-01-01 Stafford

Headquarters 1 888665555 1981-06-19 Houston


g. Compare the results of question e and f
Số lượng hàng và cột của câu e lớn hơn nhiều so với câu f. Câu e sử dụng phép
tính tích đề cạc, còn câu f sử dụng phép tính Natural Join . Nên câu e có thể tồn tại
các cặp trùng nhau
h. Employee – Dependent
- Không trừ được bỏi vì Employee và Dependent không cùng cấu trúc. i.
ΠSsn(Employee) - ΠEssn(Dependent)
- Vì có cùng cấu trúc nên trừ được :

Ssn
12345678
9
99988777 7

66688444 4

45345345 3

98798798 7
j. σSex = F and Salary > 30000(Employee)  σSex = M and Salary < 30000(Employee)
k. Fnam Mini Lname Ssn Bdate Address Sex Salar Super_snn Dno
e t y

Jennifer S Wallace 98765432 1941- 291 Berry, F 43000 888665555 4


1 06-20 Bellaire,
TX

Ahmad V Jabbar 98798798 1969- 980 M 25000 987654321 4


7 03-29 Dallas,
Houston,
TX

l. ΠSsn(σDno=5(Employee))  Ssn(ΠEssn(σPno =1(Works_on)))

Ssn
12345678
9
45345345 3

m. Explain the sense of the result of question j and k.


2. Given a University database as follows:
Consi
der the above figure. In addition to constraints relating the values of columns in
one table to columns in another table, there are also constraints that impose
restrictions on values in a column or a combination of columns within a table. One
such constraint dictates that a column or a group of
columns must be unique across all rows in the table. For example, in the
STUDENT table, the Student_number column must be unique (to prevent two
different students from having the same Student_number).
- Identify the column or the group of columns in the other tables that must be
unique across all rows in the table.
- Identify the primary key, foreign key in each relational schema. - Specify the
following queries on the University database schema: a. Retrieve the
student_number and the name of all students in the university.
Π Student_number, Name(STUDENT)

b. Retrieve the student_number and the name of all students in “Computer


Science” major
Π Student_number, Name(σMajor= Computer Science(STUDENT))
c. Retrieve the prerequisite course number and course name of the course which
has course number “1111’’
Πprerequisite_number,course_number,course_name(σcourse_number=1111(COURSE|X| PREREQUISITE))

d. Retrieve the section identifier, course number and course name of courses which
are opened in semester 1, year 2019
Πsection_identifier,course_number,course_name(σsemester=1 and year=2019(COURSE|X| SECTION))

e. Retrieve the section identifier, course number and course name of courses which
are not opened in semester 1, year 2019
Πsection_identifier,course_number,course_name(σsemester!=1 and year!=2019(COURSE|X| SECTION)) f. Retrieve the
section identifier, course number and course name of courses which are opened in
year 2018 or 2019.
Πsection_identifier,course_number,course_name(σyear=2018(COURSE|X| SECTION))

 Πsection_identifier,course_number,course_name(σyear=2019(COURSE|X| SECTION))
g. Retrieve the section identifier, course number and course name of courses which
are opened in year 2018 and 2019.
Πsection_identifier,course_number,course_name(σyear=2018(COURSE|X| SECTION))

 Πsection_identifier,course_number,course_name(σyear=2019(COURSE|X| SECTION))

Câu hỏi ôn tập chương 2.


1. Quan hệ là gì?
- Một quan hệ r định nghĩa trên lược đồ quan hệ R={A1,...,An} là tập con bất kỳ của
tích Descartes các miền giá trị của các thuộc tính trong lược đồ quan hệ. 2. Mỗi cột
trong một quan hệ còn được gọi là gì?
- Các cột biểu thị các thuộc tính của chủ thể và tên cột thường là tên của thuộc tính.
3. Mỗi dòng trong một quan hệ còn được gọi là gì?
- Mỗi hàng biểu thị cho một cá thể, gồm một bộ các giá trị tương ứng với các cột. 4.
Ràng buộc toàn vẹn là gì?
- Ràng buộc toàn vẹn được xem là công cụ để diễn đạt ngữ nghĩa của 1 CSDL 5. Các
quan hệ phải có ràng buộc toàn vẹn để làm gì?
- Nhằm kiểm tra tính đúng đắn và hợp lệ của dữ liệu trước khi lưu trữ. 6. Miền giá trị
(MGT) của một thuộc tính là gì?
- Miền giá trị (Domain) của thuộc tính là tập những giá trị mà các dữ liệu có thể lấy .
Miền giá trị (Domain ) của thuộc tính A được ký hiệu là MGT(A) hoặc Dom(A).
- Miền giá trị của một thuộc tính kép bằng tích Descartes các miền giá trị thành phần.
7. Lược đồ quan hệ là gì?
- Lược đồ quan hệ là tập hữu hạn các thuộc tính. Ký hiệu R={A1,...,An}, mỗi thuộc tính
Ai, với i=1..n, có miền giá trị tương ứng là MGT(Ai).

8. Biểu diễn nào dưới đây là lược đồ quan hệ


a. Q(A, B, C)
b. Q  A, B, C
c. Q{A, B, C}
d. Cả 3 câu trên đều đúng
- Đáp án A
9. Thể hiện/ tình trạng của một quan hệ là gì?
- Trạng thái quan hệ (Relation state) của một lược đồ quan hệ R(A1, A2,…,An) là một
tập các Bộ dữ liệu n giá trị r={t1, t2,…, tn}. Kí hiệu là r(R).a 10. Cơ sở dữ liệu (CSDL)
quan hệ là gì?
- Cơ sở dữ liệu quan hệ là CSDL được xây dựng trên mô hình dữ liệu quan hệ , có các
đặc trưng sau:
 Mỗi quan hệ có một tên phân biệt với quan hệ khác
 Các bộ là phân biệt và không quan trọng thứ tự
 Mỗi thuộc tính có một tên phân biệt và không quan trọng thứ tự  Quan hệ không có
thuộc tính đa trị hay phức hợp
11. Lược đồ cơ sở dữ liệu (CSDL) quan hệ là gì?
- Nhiều lược đồ quan hệ cùng nằm trong một hệ thống quản lý gọi là 1 lược đồ CSDL.
12. Siêu khóa của một lược đồ quan hệ Q(R) là gì?
- Một siêu khóa là một khóa cơ bản của bất kỳ mối quan hệ. Nó được định nghĩa là
một khóa có thể xác định tất cả các thuộc tính khác trong một mối quan hệ . Siêu khóa
có thể là một thuộc tính đơn hoặc một tập hợp các thuộc tính. Hai thực thể không có
cùng giá trị cho các thuộc tính tạo thành một siêu khóa. Có ít nhất một hoặc nhiều hơn
một siêu khóa trong một mối quan hệ.
13. Trong một quan hệ Chỉ có duy nhất 1 siêu khóa là đúng hay sai - Sai
14. Một siêu khóa trong một quan hệ có thể bao gồm nhiều hơn số thuộc tính trong
một quan hệ là đúng hay sai?
- Sai
15.Phát biểu nào dưới đây sai:
a. Số thuộc tính trong siêu khóa là tập con của tập thuộc tính trong quan hệ b. Tập cha
của siêu khóa cũng chính là siêu khóa
c. Một tập con bất kỳ của siêu khóa cũng là siêu khóa
d. Cả 3 câu trên đều đúng
- Đáp án c
16. Cho Q(A, B, C, D, E) có siêu khóa là {A, B, C}. Phát biểu nào dưới đây là sai:
a. {A, B, C, D} là siêu khóa
b. {A, B, C, D, E} là siêu khóa
c. Cả 2 câu a, b đều đúng
d. Cả 2 câu a, b đều sai
- Đáp án d
17. Khóa ứng viên (candidate key) của một quan hệ là gì?

lOMoARcPSD|22127631

- Một mối quan hệ có thể chỉ có một khóa chính. Nó có thể chứa nhiều trường hoặc kết
hợp các trường có thể được sử dụng làm khóa chính. Một trường hoặc kết hợp các
trường được sử dụng làm khóa chính. Các trường hoặc kết hợp các trường không
được sử dụng làm khóa chính được gọi là khóa ứng cử viên hoặc khóa thay thế.
18.Phát biểu nào sau đây đúng
a. Khóa ứng viên là khóa có thể được chọn làm khóa chính cho một quan hệ b. Mỗi
quan hệ chỉ có duy nhất một khóa ứng viên
c. Cả a và b đều đúng
d. Cả a và b đều sai
- Đáp án A
19. Khóa chính (primary key) của một quan hệ là gì?
- Thuộc tính hoặc sự kết hợp của các thuộc tính xác định duy nhất một hàng hoặc bản
ghi trong một mối quan hệ được gọi là khóa chính
20.Mỗi quan hệ chỉ có duy nhất 1 khóa chính là đúng hay sai?
- Đúng
21.Cho Q1(A, B, C) và Q2(D, A). Phát biểu nào dưới đây là đúng a. Thuộc tính Q2.

a. Là khóa ngoại trong Q2


b. Q1 được gọi là quan hệ được tham chiếu và Q2 được gọi là quan hệ tham chiếu
c. Thuộc tính Q2.A tham chiếu qua Q1.A
d. Cả 3 câu trên đều đúng
Đáp án d
22. Cho Q1(A, B, C) và Q2(D, B). Phát biểu nào dưới đây là đúng a. Q2.B có thể là
khóa ngoại tham chiếu qua Q1.B nếu Q1.B có ràng buộc unique
b. Q2.B là khóa ngoại tham chiếu qua Q1.B nếu Q1.B có ràng buộc not null c. Cả 2 câu
a, b đều đúng
d. Cả 2 câu a, b đều đúng
Đáp án c
23. Phát biểu nào dưới đây đúng
a. Khóa ngoại trong mô hình quan hệ biểu diễn mối kết hợp giữa 2 quan hệ b. Ràng
buộc về khóa ngoại còn gọi là ràng buộc tham chiếu
c. Cả 2 câu a, b đều đúng
d. Cả 2 câu a, b đều đúng
- Đáp án C
24. Giải thích ràng buộc tham chiếu nghĩa giữa Q1(A, B, C) và Q2(D, A)
- Khóa ngoại Q2.A tham chiếu qua Q1.A
Q2(D,A) được gọi là quan hệ tham chiếu, còn Q1(A,B,C) được gọi là quan hệ được
tham chiếu.
25. Một thuộc tính có ràng buộc unique nghĩa là gì?
- Sử dụng để đảm bảo dữ liệu của cọt là duy nhất, không trùng lặp giá trị trên cùng 1
cột.
26. Một thuộc tính có ràng buộc not null nghĩa là gì?
- Sử dụng để đảm bảo dữ liệu của cột không được nhận giá trị NULL 27.Một thuộc tính
có ràng buộc khóa chính nghĩa là gì?

- Dùng để thiết lập khóa chính trên bảng, xác định giá trị trên tập các cột làm khóa
chính phải là duy nhất, không được trùng lặp. Việc khai báo ràng buộc khóa chính yêu
cầu các cột phải NOT NULL.
28. Miền giá trị của một thuộc tính nghĩa có phải là một ràng buộc áp đặt lên dữ liệu
của thuộc tính đó không?
- Yes,
29. Các ký hiệu sau |Sex|, Dom(Sex), MGT(Sex) ký hiệu nào là ký hiệu miền giá trị của
thuộc tính Sex.
- |Sex|, Dom(Sex), MGT(Sex)
30. Cho NV(MaNV, Hoten, NgaySinh) và PB(MaPB, TenPB, Matrph). Quy định: mỗi
phòng ban có 1 NV là trương phòng. Phát biểu nào dưới đây là đúng 2 lược đồ quan
hệ trên
a. MaNV có ràng buộc unique và not null
b. Có ràng buộc tham chiếu từ PB.Matrph sang NV.MaNV
c. Cả a và b đều sai
d. Cả a và b đều đúng
31.Trong một quan hệ, thứ tự các thuộc tính và các bộ có quan trọng không? Tại sao? -
Trong một quan hệ, thứ tự các thuộc tính và các bộ không quan trọng vì có thể sắp xếp
lại các thứ tự các thuộc tính và các bộ.

You might also like