Ôn thi môn cơ sở dữ liệu và phần mềm ứng dụng
Câu 1: Cơ sở dữ liệu và hệ quản trị csdl là gì? Cho ví dụ minh hoạ
Câu 2: Các thành phần của một hệ csdl là gì? Cho ví dụ minh hoạ
Câu 3: Mô hình cơ sở dữ liệu ? Cho ví dụ minh hoạ
Câu 4: Nêu các khái niệm về quan hệ, lược đồ cơ sở dữ liệu quan hệ trong mô hình cơ sở dữ liệu quan hệ. Cho ví dụ minh hoạ
Câu 5: Trình bày các phép toán trên mô hình quan hệ (Phép hợp, giao, chọn, chiếu, kết nối, trừ, tích đề các, chia)
Câu 6: Phụ thuộc hàm và bao đóng của phụ thuộc hàm là gì? Cho ví dụ minh hoạ.
Khái niệm Phụ thuộc hàm
Câu 7: Phủ tối thiểu của phụ thuộc hàm là gì? Có phải mỗi phủ tối thiểu có một phủ tối thiểu tương đương hay không?
Câu 8: Định nghĩa dạng chuẩn 1, 2, 3, Boye-Codd. Cho ví dụ minh hoạ. Chuẩn BoyCodd khác gì với chuẩn 3. Vì sao nó được coi là mạnh hơn chuẩn 3.
Câu 9: Các bước cơ bản trong thiết kế cơ sở dữ liệu là gì?
Câu 10: Dị thường là gì? Vì sao chúng được xem là không tốt đối với CSDL? Hãy cho các ví dụ minh hoạ về các dị thường đối với các thao tác chèn, xóa, sửa trên một CSDL.
Câu 11: Từ hệ tiên đề Amstrong. Hãy chứng minh các bổ đề của hệ tiên đề đó.
Câu 12: Tính chất kết nối không mất mát thông tin của một phép tách lược đồ quan hệ là gì? Vì sao nó quan trọng trong thiết kế cơ sở dữ liệu? Cho ví dụ minh họa.
Câu 13: Tính chất kết nối bảo toàn tập phụ thuộc hàm của một phép tách là gì? Vì sao nó quan trọng trong thiết kế cơ sở dữ liệu? Cho ví dụ minh họa.
Câu 14: Phép kết nối tự nhiên trong mô hình quan hệ là gì? Cho ví dụ minh hoạ? Biểu diễn một phép kết nối tự nhiên trong cú pháp SQL?
9 trang |
Chia sẻ: lvcdongnoi | Lượt xem: 7005 | Lượt tải: 5
Bạn đang xem nội dung tài liệu Ôn thi môn cơ sở dữ liệu và phần mềm ứng dụng, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Phần I
Câu 1: Cơ sở dữ liệu và hệ quản trị cơ sở dữ liệu là gì? Cho ví dụ minh họa?
Cơ sở dữ liệu: Tập hợp dữ liệu tương quan có tổ chức được lưu trữ trên các phương tiện lưu trữ như đĩa từ, băng từ,... nhằm thỏa mãn các yêu cầu khai thác thông tin (đồng thời) của nhiều người sử dụng và của nhiều chương trình ứng dụng.
Ví dụ: Cơ sở dữ liệu nguồn nhân lực, Cơ sở dữ liệu khách hàng, Cơ sở dữ liệu sản phẩm hàng hóa,...
Hệ quản trị cơ sở dữ liệu: Hệ quản trị CSDL là một phần mềm cho phép tạo lập CSDL và điều khiển mọi truy nhập đối với CSDL đó.
Ví dụ: MySQL, Oracle, PostgreSQL, SQL Server, DB2, Infomix,...
Câu 2: Các thành phần của một hệ cơ sở dữ liệu là gì? Cho ví dụ minh họa?
Người sử dụng: Người dùng cuối, người lập trình ứng dụng, người quản trị CSDL.
Hệ quản trị CSDL: MySQL, Oracle, PostgreSQL, SQL Server, DB2, Infomix,...
CSDL: Cơ sở dữ liệu nguồn nhân lực, Cơ sở dữ liệu khách hàng, Cơ sở dữ liệu sản phẩm hàng hóa,...
Phần cứng: Máy vi tính, ổ đĩa, băng từ, thiết bị lưu trữ khác,...
Câu 3: Mô hình cơ sở dữ liệu? Cho ví dụ minh họa?
Mô hình cơ sở dữ liệu là nền tảng lý thuyết của cơ sở dữ liệu và xác định cơ bản dữ liệu trong đó theo cách lưu trữ, tổ chức và thao tác riêng. Ví dụ phổ biến nhất của một mô hình cơ sở dữ liệu là mô hình quan hệ, ngoài ra còn có những mô hình khác: mô hình thực thể liên kết E/R, mô hình dữ liệu mạng, mô hình dữ liệu phân cấp,...
Mô hình cơ sở dữ liệu quan hệ: Là mô hình biểu diễn mọi dữ liệu dưới dạng các bảng; bảng được định dạng gồm các hàng và cột. Một quan hệ là một bảng; mỗi hàng biểu diễn một bộ giá trị của quan hệ, số các bộ được gọi là lực lượng của quan hệ; mỗi cột biểu diễn một thuộc tính của các bộ, số các thuộc tính được gọi là bậc của quan hệ.
Mô hình thực thể liên kết: Là mô hình dựa trên cơ sở sự nhận thức của thế giới thực bao gồm một tập các đối tượng cơ sở được gọi là các thực thể và một tập các liên kết giữa các đối tượng này.
Câu 4: Nêu các khái niệm về quan hệ, lược đồ quan hệ trong mô hình cơ sở dữ liệu quan hệ? Cho ví dụ minh hoạ?
Các khái niệm:
Quan hệ: một tập các bộ giá trị, dữ liệu, hay còn gọi là bảng.
TenNCC
SanPham
Gia
Hải Hà
Bánh mỳ
15000
Kinh Đô
Bánh mỳ
10000
SShop
Kẹo
5000
Bibica
Kẹo
7000
Lược đồ quan hệ: được mô tả thông qua một tân từ. Kết cấu của tân từ này được biểu diễn dựa trên quan hệ (bảng) được xác định. Ví dụ:
CUNG_UNG(TenNCC, SanPham, Gia)
Câu 5: Trình bày các phép toán trên mô hình quan hệ (Phép hợp, giao, chọn, chiếu, kết nối, trừ, tích đề các, chia)
Hai quan hệ là khả hợp nếu chúng được xác định trên cùng tập thuộc tính và các thuộc tính cùng tên có cùng miền giá trị.
Phép hợp: Phép hợp của hai quan hệ khả hợp r và s, ký hiệu là r s, là tập tất cả các bộ thuộc r hoặc thuộc s hoặc thuộc cả hai quan hệ.
Phép giao: Phép giao của hai quan hệ khả hợp r và s, ký hiệu là r s, là tập tất cả các bộ thuộc cả hai quan hệ r và s.
Phép chọn: Cho r là một quan hệ, F là một biểu thức điều kiện. Phép chọn trên r với biểu thức chọn F, ký hiệu F(r), là tập tất cả các bộ của r thỏa mãn điều kiện F.
Phép chọn là phép toán lọc ra một tập con các bộ của quan hệ đã cho thỏa mãn một điều kiện xác định. Điều kiện đó được gọi là điều kiện chọn hay biểu thức chọn.
Phép chiếu: Cho quan hệ r xác định trên tập thuộc tính U = {A1, ..., An}. X U. Phép chiếu của r trên tập thuộc tính X, ký hiệu là Πx(r), là tập các bộ của r xác định trên X.
Phép chiếu trên một quan hệ thực chất là phép toán loại bỏ đi một số thuộc tính và chỉ giữ lại những thuộc tính còn lại của quan hệ đó.
Phép kết nối: Phép kết nối hai quan hệ r, s, ký hiệu r >< s là phép ghép các cặp bộ của hai quan hệ thỏa mãn một điều kiện kết nối hay một biểu thức kết nối F.
Phép trừ: Phép trừ của hai quan hệ khả hợp r và s, ký hiệu là r-s, là tập tất cả các bộ thuộc r nhưng không thuộc s.
Phép tích đề các: Cho quan hệ r xác định trên tập thuộc tính {A1, ..., An} và quan hệ s xác định trên tập thuộc tính {B1, ..., Bm}. Tích đề các của hai quan hệ r và s ký hiệu là r x s là tập tất cả các (m+n) – bộ có n thành phần đầu tiên là một bộ thuộc r và m thành phần sau là một bộ thuộc s.
Phép chia: Cho hai quan hệ r xác định trên n thuộc tính, s xác định trên m thuộc tính (n>m, s ), phép chia quan hệ r cho quan hệ s, ký hiệu r s, là các bộ t sao cho mọi bộ v thuộc s thì t ghép với v thuộc r.
Câu 6: Phụ thuộc hàm và bao đóng của phụ thuộc hàm là gì? Cho ví dụ minh hoạ?
Phụ thuộc hàm: Cho quan hệ R, thuộc tính B của quan hệ R được gọi là phụ thuộc hàm vào thuộc tính A của quan hệ R nếu với mỗi giá trị của A xác định duy nhất một giá trị của B. A được gọi là xác định hàm của B.
Ký hiệu: A -> B
Tập các phụ thuộc hàm F của một lược đồ quan hệ R là một tập gồm các phụ thuộc hàm xác định trên R.
Ví dụ: Tập phụ thuộc hàm F = {A -> B, B -> C} của R(A,B,C)
F = {MaNCC -> TenNCC, MaNCC -> SoNV, MaNCC -> DiaChi}
Bao đóng của phụ thuộc hàm: Cho tập các phụ thuộc hàm F xác định trên R. Bao đóng F+ của tập các phụ thuộc hàm F là tập tất cả các phụ thuộc hàm được suy diễn logic từ F và F.
Ví dụ: F là tập phụ thuộc hàm trên R.
F = {MaNV -> TenNV, MaPB -> {TenPB, TrPhong}, MaNV -> MaPB}
Mọi r R thỏa mãn F và MaNV -> {TenPB, TrPhong} cũng đúng với r thì MaNV ->{TenPB, TrPhong} gọi là được suy diễn từ F.
Câu 7: Phủ tối thiểu của phụ thuộc hàm là gì? Có phải mỗi phủ tối thiểu có một phủ tối thiểu tương đương hay không?
Phủ tối thiểu của phụ thuộc hàm: F được gọi là một tập phụ thuộc hàm tối thiểu (hay phủ tối thiểu) nếu F thỏa mãn đồng thời 3 điều kiện sau:
1. F là tập phụ thuộc hàm có vế trái không dư thừa
2. F là tập phụ thuộc hàm có vế phải một thuộc tính
3. F là tập phụ thuộc hàm không dư thừa
hay: Phủ G của tập các phụ thuộc hàm F (G≈F) là tập các phụ thuộc hàm xác định trên R sao cho G+ = F+.
Không phải mỗi phủ tối thiểu có một phủ tối thiểu tương đương. Ví dụ: Giao trinh CSDL.pdf
Câu 8: Định nghĩa dạng chuẩn 1, 2, 3, Boye-Codd? Cho ví dụ minh hoạ? Chuẩn Boye-Codd khác gì với chuẩn 3? Vì sao nó được coi là mạnh hơn chuẩn 3?
Chuẩn 1: Một lược đồ quan hệ R ở dạng chuẩn 1 nếu và chỉ nếu toàn bộ các miền giá trị của các thuộc tính trong R đều chỉ chí các giá trị nguyên tố.
(mỗi 1 ô chỉ chứa 1 giá trị)
MaNCC
TenNCC
DiaChi
SanPham
Gia
1
Hải Hà
Hà Nội
Kẹo mềm
100
1
Hải Hà
Hà Nội
Kẹo Cứng
150
2
Kinh Đô
Hồ Chí Minh
Bánh
200
2
Kinh Đô
Hồ Chí Minh
Kẹo
120
2
Kinh Đô
Hồ Chí Minh
Bánh
200
Chuẩn 2: Một lược đồ quan hệ R ở dạng chuẩn 2 nếu nó đã ở dạng chuẩn 1 và mọi thuộc tính không khóa đều phụ thuộc hàm đầy đủ vào khóa chính.
(phụ thuộc hàm đầy đủ tức là thuộc tính không khóa phụ thuộc hàm vào khóa chính mà không phụ thuộc vào tập con của khóa chính hay phụ thuộc bắc cầu vào khóa chính)
MaNCC
TenNCC
DiaChi
1
Hải Hà
Hà Nội
2
Kinh Đô
Hồ Chí Minh
MaNCC
SanPham
Gia
1
Kẹo mềm
100
1
Kẹo cứng
150
1
Bánh
200
2
Kẹo
120
2
Bánh
200
Chuẩn 3: Một lược đồ quan hệ R ở dạng chuẩn 3 nếu nó đã ở dạng chuẩn 2 và mọi thuộc tính không khóa đều phụ thuộc hàm duy nhất vào khóa chính.
2 bảng trên đều đã thuộc chuẩn 3 vì các thuộc tính không khóa chỉ phụ thuộc duy nhất vào khóa chính: TenNCC, DiaChi chỉ phụ thuộc vào khóa MaNCC; Gia chỉ phụ thuộc vào MaNCC, SanPham
Chuẩn Boye-Codd: Một lược đồ quan hệ R thuộc dạng chuẩn Boye-Codd khi và chỉ khi mọi xác định hàm đều là một khóa.
R1(B,A) B->A thuộc chuẩn Boye-Codd
R2(C,A) C->A thuộc chuẩn Boye-Codd
Sự khác biệt giữa chuẩn Boye-Codd với chuẩn 3:
Chuẩn Boye-Codd yêu cầu cao hơn về sự phân chia quan hệ. Chuẩn Boye-Codd yêu cầu mọi xác định hàm đều là một khóa, trong khi chuẩn 3 chỉ cần đạt ở mức đô thuộc tính không khóa (trong bảng) phụ thuộc hàm duy nhất vào khóa chính.
Trên một bảng thuộc chuẩn Boye-Codd có số lượng thuộc tính ít hơn, dễ nhận ra những sai lệch hơn so với bảng chỉ thuộc đến chuẩn 3.
Câu 9: Các bước cơ bản trong thiết kế cơ sở dữ liệu là gì?
Bước 1:
Xác định mục tiêu khai thác cơ sở dữ liệu
Tìm hiểu bài toán, phân tích hiện trạng doanh nghiệp, dữ liệu doanh nghiệp
Bước 2: Xây dựng mô hình E/R tổng quát
Bước 3: Xác định các bảng dữ liệu cần thiết, mỗi đối tượng thông tin sẽ trở thành một bảng trong cơ sở dữ liệu
Bước 4: Xác định số trường (cột) trong bảng, xác định thông tin cần quản lý trong bảng. (Lưu ý: Chỉ đưa vào những thông tin thực sự cần thiết)
Bước 5: Xác định các mối quan hệ giữa các bảng
Bước 6:
Tinh chỉnh phân tích lại thiết kế ban đầu để tìm lỗi
Tạo bảng dữ liệu, xem cơ sở dữ liệu đó phản ánh như thế nào với những yêu cầu truy suất, từ đó kiểm tra độ chính xác, kịp thời sửa những lỗi mắc phải.
Bước 7:
Hoàn chỉnh lại mô hình E/R nếu phát hiện mâu thuẫn, trùng lặp.
Xây dựng mô hình quan hệ
Tạo sơ đồ mối quan hệ các bảng
Câu 10: Dị thường là gì? Vì sao chúng được xem là không tốt đối với CSDL? Hãy cho các ví dụ minh hoạ về các dị thường đối với các thao tác chèn, xóa, sửa trên một CSDL?
Dị thường: Là những vấn đề xảy ra do sự dư thừa trong trong các bảng. Không phải tất cả các bảng đều phát sinh dị thường, nó chỉ xảy ra khi một bảng chưa được chuẩn hóa hoàn thiện. Một bảng chuẩn hóa lỗi có thể xảy ra những dị thường sau: Dị thường khi cập nhật bộ (update anomaly), dị thường khi xóa bộ (deletion anomaly), dị thường khi thêm bộ (insertion anomaly)
Dị thường được xem là không tốt đối với CSDL vì:
Nó ngăn cản việc thêm, xóa, cập nhật những thông tin.
Xảy ra hiện tượng dư thừa thông tin
Xảy ra mất mát thông tin
Dị thường đối với thao tác chèn: Thêm vào 1 bộ giá trị mới nhưng lại trùng với 1 bộ đã có; Thêm vào 1 bộ giá trị mới nhưng lại thiếu những giá trị mà bảng quy định.
Dị thường đối với thao tác xóa: Không xóa hoàn thông tin của một đối tượng nên vẫn còn thừa thông tin trong bảng;
Dị thường đối với thao tác cập nhật: Cập nhật thông tin nhưng lại thiếu số liệu trong bộ giá trị;
Câu 11: Từ hệ tiên đề Amstrong, hãy chứng minh các luật tách, hợp, giả bắc cầu từ hệ tiên đề đó?
Hệ tiên đề Amstrong:
Giả thiết:
Cho lược đồ quan hệ R
X, Y, Z là tập các thuộc tính của R
XY = X Y
Hệ 3 tiên đề với các phụ thuộc hàm:
Phản xạ: XY -> X ; XY -> Y
Tăng trưởng: X -> Y thì XZ -> YZ
Bắc cầu: X -> Y ; Y -> Z thì X -> Z
Luật tách: Nếu X -> Y, Z Y thì X -> Z
Z Y thì Y -> Z (tiên đề phản xạ)
X -> Y
Theo tiên đề bắc cầu: X -> Z (đpcm)
Luật hợp: Nếu X -> Y ; X -> Z thì X -> YZ
X -> Y thì X -> YX (tiên đề tăng trưởng)
X -> Z thì XY -> YZ (tiên đề tăng trưởng)
Theo tiên đề bắc cầu : X -> YZ (đpcm)
Luật bắc cầu giả: Nếu X -> Y ; WY -> Z thì XW -> Z
X -> Y thì WX -> WY (tiên đề tăng trưởng)
WY -> Z
WX -> Z (tiên đề bắc cầu)(đpcm)
Câu 12: Tính chất kết nối không mất mát thông tin của một phép tách lược đồ quan hệ là gì? Vì sao nó quan trọng trong thiết kế cơ sở dữ liệu? Cho ví dụ minh họa?
Tính chất kết nối không mất mát thông tin của một phép tách lược đồ quan hệ là tính chất đảm bảo các bộ giả không được tạo ra khi áp dụng phép nối tự nhiên vào các quan hệ trong phép tách.
Tính chất này quan trọng trong thiết kế cơ sở dữ liệu vì:
Nếu một phép tách không có tính chất nối không mất mát thông tin thì chúng ta có thể nhận được các bộ phụ thêm (các bộ giả) sau khi áp dụng các phép chiếu và nối tự nhiên.
Các bảng sau phép tách sẽ không có môi liên hệ với nhau -> thiếu thông tin.
Khi thiếu thông tin thì sẽ không quản lý được hoạt động của cơ sở dữ liệu, đưa ra những điều chỉnh phù hợp.
Ví dụ minh họa: Slide 41, chương II của cô giáo
Câu 13: Tính chất kết nối bảo toàn tập phụ thuộc hàm của một phép tách là gì? Vì sao nó quan trọng trong thiết kế cơ sở dữ liệu? Cho ví dụ minh họa?
Tính chất kết nối bảo toàn tập phụ thuộc hàm của một phép tách là tính chất đảm bảo sự suy diễn logic được bảo toàn của nhưng lược đồ quan hệ con Ri sau khi tách từ lược đồ quan hệ cha R.
Nó quan trọng trong thiết kế cơ sở dữ liệu vì:
Nếu không bảo toàn phụ thuộc hàm của một phép tách các giá trị thông tin ở bảng được tách không có ý nghĩa vì phép suy diễn logic lúc này trở thành không logic.
Khi không còn sự logic trong phụ thuộc hàm có thể hệ thống sẽ báo lỗi, không truy suất được dữ liệu cho nhà quản trị
Ví dụ minh họa: Slide 54,55,56 chương II của cô giáo
Câu 14: Phép kết nối tự nhiên trong mô hình quan hệ là gì? Cho ví dụ minh hoạ? Biểu diễn một phép kết nối tự nhiên trong cú pháp SQL?
Phép kết nối tự nhiên trong mô hình quan hệ: Phép ghép các cặp bộ của hai quan hệ trên các thuộc tính bằng nhau của hai quan hệ, một trong hai thuộc tính của phép so sánh “=” được loại bỏ sau khi thực hiện ghép.
Ví dụ minh họa:
R(A, B, C)
a1
b1
1
a2
b2
2
a3
b3
3
S(D, E)
1
e1
2
e2
3
e3
R kết nối tự nhiên với S (do C=D)
a1
b1
1
e1
a2
b2
2
e2
a3
b3
3
e3
Biểu diễn một phép nối tự nhiên trong cú pháp SQL:
Select *
From R, S
Where R.C=R.D
Các file đính kèm theo tài liệu này:
- tra loi cau hoi de cuong on tap.doc
- CSDL Canh kaka.doc