Thực thể A nhận thêm thuộc tính cuả thực thể B - tạo mới một quan hệ trong đó các thuộc tính khoá nhận mối quan hệ thực thể mối kết hợp làm khoá HOCSINHMS_LOP- TENLOP Học Chương trình..
Trang 1CÁC KHÁI NIỆM CƠ BẢN I/ DẪN NHẬP VỀ CƠ SỞ DỮ LIỆU
1/ Hệ thống tập tin không cấu trúc - dạng văn bản rời rạc
II/ CÁC KHÁI NIỆM
1/ Cơ sở dữ liệu là tập hợp dữ liệu được tổ chức chặt chẽ để giải quyết các mục tiêu thực tế bằng các bài toán phức tạp
Mục tiêu Lưu trữ
2/ Hệ quản trị Cơ sở dữ liệu là các phần mềm đáp ứng được nhu cầu về quản lý và xây dựng được Cơ sở dữ liệu và có thể thao tác được trên đó, thường bao gồm các phần mềm như MicrosoftExcel, Foxpro, Access, Paratox, PowerBuilder, InterBase, Oracle, SQLServer, DB2…
III/ KIẾN TRÚC CƠ SỞ DỮ LIỆU
Cơ sở dữ liệu trên máy cục bộ:
SingleUser (một người dùng)
MultiUser (đa người dùng)
Cơ sở dữ liệu mạng LAN (mạng cục bộ LocalAreaNetwork)
IV/ BA MỨC ĐỘ TRIÙ TƯỢNG CUẢ MỘT CƠ SỞ DỮ LIỆU
Trang 2Trang 2
USERS APPLICATION
Bản quyền Bộ xử lý Bộ dịch DLL
truy xuất ngôn ngữ SQL
Bảng truy xuất Bộ quản trị CSDL Mô tả CSDL
đồng thời
Bộ quản lý tập tin
Mức vật lý
VI/ MÔ HÌNH DỮ LIỆU VÀ CÁC KHÁI NIỆM
1/ Định nghiã về mô hình dữ liệu (DataModel):
Mô hình dữ liệu là tập hợp ký hiệu và cách kết nối để diễn đạt ở mức quan niệm
Hệ thống thông Hệ thống ở Hệ thống ở tin thực tế mức quan niệm mức vật lý
gồm các thông tin được Cài đặt thông tin ở dạng đóng gói và diễn đạt Table, DBF, File
ở mô hình
Khái niệm về thực thể (Entily):
Thực thể là một đối tượng có thật hoặc tồn tại ở quan niệm
Trang 3Không thể có hai thực thể cuả cùng một lớp thực thể có cùng một thuộc tính chỉ danh
Mỗi giá trị cuả thuộc tính chỉ danh chỉ xác định một thực thể duy nhất
Bản số mối kết hợp là số tối đa các thực thể tham gia vào mối kết hợp Nói khác đi là nó diễn đạt tần xuất sự xuất hiện cuả một thực thể nào đó
VII/ MỘT SỐ VÍ DỤ VỀ MÔ HÌNH DỮ LIỆU
Tên mối kết hợp
Cơ sở dữ liệu
Quy tắc quản lý
Trang 4Là dạng mối kết hợp phụ thuộc tồn tại thực thể
Thực thể A nhận thêm thuộc tính cuả thực thể B - tạo mới một quan hệ trong đó các thuộc tính khoá nhận mối quan hệ thực thể mối kết hợp làm khoá HOCSINH(MS_LOP- TENLOP)
Học
Chương trình
Trang 5TENKHO Tên kho;
DCKHO Điạ chỉ kho;
SOPN Số phiếu nhập;
NGAYPN Ngày phiếu nhập;
SLGN Số lượng hàng nhập;
DGN Đơn giá nhập;
SOPX Số phiếu xuất;
NGAYPX Ngày phiếu xuất;
Trang 6Gồm
Ngành
Gồm
Lớp
Trang 72/ Cơ sở dữ liệu tổ chức ở mức vật lý:
+ Cơ sở dữ liệu cục bộ
+ Cơ sở dữ liệu mạng
i/ Mô thức khai thác từ xa:
ii/ Kiến trúc Client/Server
iii/ Ngoài ra còn có kiến trúc Client/Server chia xẻ:
Mỗi Client có một DBMS Client, trên Server có DBMS Server
II/ MÔ HÌNH CƠ SỞ DỮ LIỆU QUAN HỆ
DBMS
HARD_DISK OR
FLOPPY_DISK
(MEMORY)
Trang 8Trang 8
Ví dụ: Ngày 1 31; tháng 1 12; năm 0 2000;
ngày * tháng * năm = bộ Dương lịch
Quan hệ (Relation) là tập con cuả tích Dercate cuả một hay nhiều miền Khái niệm bộ thường gắn chặt với quan hệ gọi là bộ quan hệ, trong đó các miền gọi là các thuộc tính
Ký hiệu: Q={A1;A2;…}
Q+ : Tập thuộc tính cuả Q;
Q: Quan hệ
Khoá cuả quan hệ Q trên tâp thuộc tính {A1;A2;…} là tập con K chứa tát
cả các thuộc tính A1; A2… có thể có thoả mãn tính chất:
* Phép chiếu: Cho Q(A1,A2 ,An), X là tập con cuả tập thuộc tính Q+ trên
Q hình thành quan hệ mới gồm N bộ xác định trên X
a4 c4
* Phép chọn: Phép chọn trên quan hệ Q hình thành một quan hệ mới gồm các bộ trong Q thoả mãn điều kiện D(X) với X là tập hợp con cuả tập thuộc tính Q+ Giá trị cuả D(X) có thể là TRUE hoặc FALSE
Ví dụ: D(X) X={A;C}
D(X)=TRUE ⇔ A=a1 and C=c1
Biểu diễn: σ DX(Q)={t ∈Q/D(X)=TRUE}
Trang 9Để biết số tồn cuả mặt hàng có mã số KT001 ở tại kho TCC:
σ(TONKHO:MSMH KT001 AND MSKHO=TCC)
Để biết số lượng tồn cuả mặt hàng KT001 ở kho TCC:
Π[SLTON] σ (TONKHO:MSMH= “KT001” AND MSKHO= “TCC”)
Cho Q(A1;A2….An) và P(B1;B2….Bn) ; X⊆Q+; Y⊆P+
Phép kết cuả Q tại tập thuộc tính X với P tại Y hình thành một quan hệ mới mang tính chất cuả phép giao:
∈ q ∩ p, q[x] θ p[x]}
θ là phép so sánh Theta gồm các toán tử so sánh: =; <; <=; >; >= Trường hợp đặc biệt không có phép so sánh thì ta gọi đó là phép kết tự do (tích Decarte), ngươc lại gọi là Theta kết Nếu phép kết P và Q với X=Y thì trong
RÀNG BUỘC TOÀN VẸN
I/ ĐỊNH NGHIÃ
1/ Ràng buộc toàn vẹn:
Ràng buộc toàn vẹn là ràng buộc bất biến mà ở mọi tình trạng cuả lược đồ
dữ liệu phải thoả mãn
2/ Các yếu tố:
2.1 Biểu thức biểu diễn:
Ký hiệu cuả phép toán tập hợp:∀; ∃!; ⊂; ⊆; ∉
Trang 10Lược đồ giải thuật:
2.2 Bối cảnh cuả Ràng buộc toàn vẹn:
Bối cảnh cuả Ràng buộc toàn vẹn là sự phản ánh tập các quan hệ mà ở đó Ràng buộc toàn vẹn được định nghiã:
2.3 Tầm ảnh hưởng:
Trong Cơ sở dữ liệu các thao tác: thêm; xoá; sưả hoặc chỉnh sưả một quan
hệ tầm ảnh hưởng cuả Ràng buộc toàn vẹn xác định thao tác nào có thể gây nguy cơ thya đổi đến sự Ràng buộc toàn vẹn hay không
BEGIN
Vô số nghiệm
Vô nghiệm
b=0 a=0
END
-a b
Trang 11II/ PHÂN LOẠI RÀNG BUỘC TOÀN VẸN:
1/ Ràng buộc toàn vẹn bối cảnh một quan hệ:
1.1 Ràng buộc toàn vẹn miền giá trị:
Xử lý (theo ngôn ngữ PASCAL)
1.2 Ràng buộc toàn vẹn liên thuộc tính:
Trang 122/ Ràng buộc toàn vẹn bối cảnh nhiều quan hệ:
2.1 Phụ thuộc tồn tại (Tham chiếu phụ thuộc khoá ngoại):
Ví dụ: HOCSINH(MSHS,MSLOP, )
LOP(MSLOP,TENLOP)
là một phụ thuộc tồn tại vì không có LOP thì không thể có HOCSINH
∀ hosinh ∈ HOCSINH, ∀lop ∈ LOP: hocsinh[MSLOP]⊆lop[MSLOP]
MONHOC
KQ
CO
Trang 13Hệ chương trình quản lý chỉ cho phép các sinh viên học các môn mà lớp anh ta phải học
QHỆ QUAN HỆ Q1 QUAN HỆ Q QUAN HỆ Qn RBTV T X S T X S T X S RBTV1
Cho quan hệ Q, X và Y là các tậo thuộc tính Q+
Y được gọi là phụ thuộc hàm vào X, ký hiệu X→Y (X xáx định phụ thuộc hàm Y) khi và chỉ khi:
Mỗi đề tài ghi nhận một mã số duy nhất
Mỗi đề tài do một Phòng Ban quản lý
Mỗi Phòng Ban ghi nhận một mã duy nhất
Mỗi nhân viên ghi nhận một mã duy nhất
Mỗi nhân viên chỉ thuộc một Phòng Ban
Một nhân viên có thể tham gia vào nhiều đề tài thuộc Phòng Ban mình quản lý
F= {MSDT → TENDT
MAPB → TENPB
MSDT → MAPB
MSNV → HT,DC,MAPB}
F là tập phụ thuộc hàm cuả Cơ sở dữ liệu đang khảo sát
2 Một số khái niệm trong phụ thuộc hàm:
2.1 Phụ thuộc hàm suy diễn:
Cho lược đồ Q, F là tập phụ thuộc hàm định nghiã trên Q+, X và Y là hai tập thuộc tính chứa trong Q+, X xác định phụ thuộc hàm Y được gọi là phụ thuộc hàm suy diễn từ F nếu ∀TQ ∈ Q thoả mãn các phụ thuộc hàm trong F thì thoả mãn phụ thuộc hàm X xác định Y
Trang 14+ Luật bắc cầu giả: X → Y , XY → W thì XZ → W
3 Bài toán thành viên:
3.1 Bao đóng tập thuộc tính:
Cho quan hệ Q, X ⊆ Q+ , bao đóng tập thuộc tính cuả X trên tập phụ thuộc hàm F định nghiã trên Q là tập thuộc tính Y chưá trong Q+, sao cho Y là các thuộc tính vế phải cuả các phụ thuộc hàm có thể có với X ở vết trái cuả các phụ thuộc hàm đó
Ký hiệu: X+ = (Y/F /= X → Y)
3.2 Bài toán thành viên:
Cho lược đồ Q, F là tập các phụ thuộc hàm định nghiã trên Q, hãy xem phụ hàm X → Y có được suy diễn từ F hay không
Trang 15Xi+1= XI ∪ A
F /= Y → X
và A ∈ Z, Y ⊆ Xi
Cho đến khi Xi+1= Xi → STOP
4 Khoá cuả lược đồ quan hệ:
4.2 Xác định khoá cuả lược đồ quan hệ:
Thuật toán cơ bản:
Xuất phát từ siêu khoá là tập thuộc tính Q+ cuả lược đồ Q: ta lần lượt loại
bỏ các thuộc tính cho đến khi không thể loại bỏ được nưã thì dừng
4.3.1 Quy ước xây dựng đồ thị:
Mỗi nút trên đồ thị là một thuộc tính
Mội cung tượng trưng cho cho sự phụ thưộc hàm từ nút Ai đến nút Aj Nếu tồn tại X → Y trong đó X là tập thuộc tính X(A1 A2 ) Y là tập thuộc tính thì phải tạo thêm nút giả sau đó kẻ cung từ X vào nút giả sau đó từ nút giả
kẻ cung đến Y
4.3.2 Xác định siêu khoá:
- Gọi Ko là tập các nút mà không có cung đi đến nó Nếu từ Ko dưạ trên
đồ thị phụ thuộc hàm có thể dẫn đến các nút khác còn lại thì Ko là khoá, nếu từ
Ko không thể dẫn đến tất cả các nút còn lại thì phải hội thêm vào Ko một thuộc tính trong tập thuộc nính nút và khảo sát tính chất khoá cho đến khi đạt được thì dừng
II/ PHỦ CUẢ TẬP PHỤ THUỘC HÀM
1 Định nghiã:
Cho lược đồ Q tập thuộc tính Q(A1,A2 ) gọi F và G là tập thuộc tính định nghiã trên Q G gọi là phủ cuả F khi và chỉ khi phụ thuộc hàn X xác định Y chưá trong G
Và phụ thuộc hàm Z → W suy diễn từ G mà Z → W ∈ F
Ký hiệu: F ϑ G
G≠F
2 Phủ không dư thưà:
Trang 16Trang 16
Cho lược đồ Q, F và G là hai tập phụ thuộc hàm định nghiã trên Q, G là phủ cuả F, G gọi là phủ không dư thưà cuả F nếu không tồn tại g∈G cũng là phủ cuả F
Xác định phủ không dư thưà:
B gọi là thuộc tính thưà bên phải cuả phụ thuộc hàm khi và chỉ khi tập phụ thuộc hàm F bỏ đi thuộc tính X→Y hội với phụ thuộc hàm F bỏ bớt đi thuộc tính X→Y hội với X→Y \ B vẫn tương đương với F
i) A thưà bên trái: F=X→Y∈F:{f\(X→Y) ∪ (X-A→Y)≡F
ii) B thưà bên phải: F:X→Y∈F:{f\(X→Y) ∪ (X→Y-B)≡F
3.2 Phủ đã rút gọn bên trái:
Cho lược đồ quan hệ Q, G là phủ đã rút gọn bên trái khi và chỉ khi
∀F:X→Y∈g không thuộc G
Xác định phủ đã rút gọn:
InPut: Q(A1 A2…)
OutPut: G phủ đã rút gọn bên trái
For i:=1 To n (số phụ thuộc hàm)
For j:=1 To m (số thuộc tính ở vế trái)
Thuật toán:
For i=1 To n (số phụ thuộc hàm)
Trang 17For j=1 To m (số thuộc tính vế phải)
G là phủ không dư thưà và là phủ vế trái đã rút gọn
III/ DẠNG CHUẨN VÀ QUÁ TRÌNH CHUẨN HOÁ
1 Ý nghiã cuả dạng chuẩn:
Các thao tác trên Cơ sở dữ liệu (thêm; xoá; sưả) đối với một quan hệ không chuẩn khi thêm vào một bộ sẽ có khả năng vi phạm phụ thuộc hàm và có thể xảy ra sự trùng lắp thông tin Khi chỉnh sưả phải duyệt qua các bộ dẫn đến
sự lãng phí Hệ quả này do Cơ sở dữ liệu chưa được chuẩn hoá
2 Các dạng chuẩn (Normal From):
2.1 Dạng 1NF:
Cho lược đồ quan hệ Q, Q đạt dạng chuần 1NF khi tất cả các trường cuả
Q đều là các giá trị nguyên tố
Thuộc tính đơn (nguyên tố) là thuộc tính mà giá trị cuả nó về Cơ sở dữ liệu không thể phân rã được nưã
2.2 Dạng chuẩn 2NF:
Cho lược đồ quan hệ Q, muốn Q đạt được dạng chuẩn 2NF thì nó phải đạt dạng chuẩn 1NF, và mọi thuộc tính không khoá đều phụ thuộc vào khoá cuả quan hệ
2.3 Dạng chuẩn 3NF:
Lược đồ Q phải đạt dạng chuẩn 1NF nhưng có thể không đạt dạng chuẩn 2NF Q đạt dạng chuẩn 3NF khi mọi thuộc tính không khoá đều không phụ thuộc bắc cầu vào khoá
2.4 Dạng chuẩn BCK (Boyy Code Kent):
Lược đồ Q đạt dạng chuẩ BCK khi mọi thuộc tính đều không phụ thuộc bắc cầu vào khoá
3 Quá trình chuẩn hoá:
3.1 Dạng chuẩn cuả lược đồ Cơ sở dữ liệu:
Cho lược đồ Q, sau khi thực hiện các thuật toán ta được C=Qi, dạng C là dạng chuẩn cao nhất mà mọi Qi∈C phải đạt được
Quá trình đi từ Q để được C được gọi là quá trình chuẩn hoá, yêu cầu: mất thông tin không vi phạm phụ thuộc hàm
Trang 18Trang 18
3.2 Các thuật toán:
3.2.1 Phân rã:
Lặp lại các thao tác tách quan hệ cho đến khi lược đồ đạt BCK
Trong từng bước lặp thực hiện:
i) f:X→Y
X không là siêu khoá
ii) Tách Q(i) thành Qi1(XY), Qi2(XZ) trong đó Z=Q+i \ {XY}
Sơ đồ
Co=Q,K,F/Q (X)+
F=Q+
C1=(Q1F1)X→Y C2=(Q2,F2)X→Z
C11=(Q11,F11) C12=(Q12,F12) C21=(Q21,F21) C22=(Q22,F22) Cuối cùng ta được C(Qi), Qi có dạng BCK, vậy ta đã có lược đồ Cơ sở dữ liệu BCK
Xj→Xi
Chú ý: khi gôm nhóm đối tượng loại bỏ phụ thuộc hàm bắc cầu
+ Xây dựng các quan hệ Qi từ các nhóm phụ thuộc hàm với tập thuộc tính
là tất cả các thuộc tính vế trái và vế phải
3.2.3 Kiểm tra bảo toàn thông tin:
Trang 19và hầu như không thay đổi trên nhiều hệ Quản trị dữ cơ sở liệu
TableName/QueryName là tên bảng hay tên Query sử dụng để rút trích Trong đại số quan hệ:
Hằng chuỗi phải nằm trong dấu nháy đôi (“ ”)
Khi tính toán trên các trường, để thuận tiện và dễ dàng trong các thao tác, người ta dùng bí danh để chỉ định theo cú pháp:
Select FieldName Alias Expression
2 Các câu lệnh SQL thao tác trên nhóm (group):
Trang 20Trang 20
2.1 Group By (Field_List)
Phối hợp các mẩu tin giống nhau theo từng trường đã định để chọn Khi dùng Group By, người ta thường tạo ra một trường mang tính chất đặc thù cuả nhóm
Field_List là danh sách tên tối đa 10 field
Phép toán kết cuả Đại số quan hệ A, B được định nghã:
Where A.FieldNameLink θ B.FieldNameLink
* Phát biểu Inner Join:
Ghi nhận kế tiếp form tạo mối liên kết ngang bằng từ hai quan hệ có giá trị bằg nhau ở trường chung
* Left Join / Right Join:
Left Join / Right Join dùng trong form kết hợp với SoucreTable:
From SoucreTable [Left Join/Right Join] Table2
Trang 21Xác định các Table trong DataBase bên ngoài:
Select [InTo] Table In [Path];DataBase=Path
Trang 22Trang 22
PHÂN TÍCH THIẾT KẾ HỆ THỐNG I/ DẪN NHẬP VỀ HỆ THỐNG THÔNG TIN
Hệ thống tổ chức là một đơn vị kinh tế xã hội, nó hoạt động trong môi trường kinh tế xã hội:
+ Tổ chức hành chính sự nghiệp
+ Tổ chức kinh tế quốc dân
Hoạt động cuả một tổ chức trong môi trường cuả nó là hoạt động hỗ tương tác động qua lại lẫn nhau, thúc đẩy nhau cùng phát triển
Việc tạo sự cân đối làm tổ chức tồn tại được trong môi trường cuả nó Ranh giới tổ chức không rõ ràng, nó phụ thuộc theo mức quan niệm cuả người xây dựng thiết kế, chính vì vậy nên nó chỉ có tính tương đối
Mô hình hoạt động:
Hàng hoá Hàng hoá Dịch vụ Dịch vụ
Thông lượng Thông lượng đầu vào đầu vào
Tiền Tiền
Nhiên liệu Nhiên liệu
Tóm lại: Hệ thống và môi trường tác động qua lại với nhau qua thông lượng đầu vào và thông lượng đầu ra
2 Hệ thống quản lý:
Để tránh sự mất cân bằng thì phải xác định mục tiêu ngắn hạn, dài hạn kiểm tra và điều phối hoạt động để đạt được mục tiêu cuả mình Việc kiểm tra này là hoạt động quản lý, hoạt động này do một bộ phận quản lý, nó giúp cho việc kiểm tra sự hoạt động có đạt kết quả hay không
Trang 23(1) Đơn đặt hàng
(2) Phòng kinh doanh
(3) Bộ phận sản xuất theo yêu cầu cung cấp vật tư
(4),(5),(6) Trên tính toán có thể cần đến nhà cung cấp nguyên vật liệu cho
bộ phận sản xuất
(7),(8) là quá trình giao nhận hàng theo đơn đặt hàng
2.1 Cấu trúc cuả hệ thống quản lý:
là một môi trường trung
gian truyền các yêu cầu từ
Hệ thống quyết định chỉ đạo toàn bộ các hoạt động cuả bộ máy
Hệ thống thông tin thu thập số liệu, báo cáo thống kê, theo dõi các thông tin trong đơn vị
Trang 24Thông tin quyết định chiến lược: Chỉ tiêu, thống kê
Thông tin kế toán - tài chính: giúp hệ thống quyết định có cách nhình chính xác về toàn bộ hệ thống dựa trên các thông tin đã có để có cách thực hiện việc quản lý và kiểm tra
Xử lý: Phản ánh các luồng dữ liệu trong hệ thống, xác định các phương thức các thông tin bị biến đổi hay loại bỏ ra khỏi hệ thống cho nên đây là một thành phần biến động
Bộ xử lý bao gồm con người, máy móc và thiết bị
Thành phần truyền thông: Phản ánh phương thức trao đổi thông tin hoạt động giưã các bộ phận
3.2 Ba mức nhận thức về hệ thống:
3.2.1 Mức quan niệm:
Mục tiêu phải xác định yêu cầu
Đặc điểm: tồn tại độc lập với mọi ngôn ngữ lập trình và thiết bị
Ngôn ngữ diễn tả không phụ thuộc vào ngôn ngữ lập trình
Yêu cầu thông tin
Thông tin bên trong và bên
ngoài
Phân tích
Tổ chức thông tin Thu và xác
định T_T
Trang 25Đặc điểm: Tuỳ thuộc vào thiết bị tin học: cấu hình phần cứng (vật lý), phần mềm cài đặt (hệ quản trị Cơ sở dữ liệu)
3.2.3 Mức tổ chức:
Là mức trung gian giưã mức quan niệm và mức vật lý, nó đặc trưng mục tiêu xác định cách quản lý (trả lời các câu hỏi Ai? Ở đâu? Khi nào? Who? Where? When?)
Dữ liệu bao gồm dữ liệu vào, dữ liệu ra, dữ liệu xử lý
Xử lý: Quy tắc hoạt động tác động lên dữ liệu vào để cho ra dữ liệu ra (xử
lý như thế nào, lưu trữ ra sao)