Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 73 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
73
Dung lượng
1,66 MB
Nội dung
Cơ sở dữ liệu ĐẠI HỌC CÔNG NGHỆ THÔNG TIN Giảng viên: ThS. Nguyễn Thị Kim Phụng Email: phungntk@uit.edu.vn Nội dung 1. Đại số quan hệ 2. Ngôn ngữ truy vấn SQL 3.Ràng buộc toàn vẹn 1. Đại số quan hệ 1. ĐẠI SỐ QUAN HỆ Là một mô hình toán học dựa trên lý thuyết tập hợp Đối tượng xử lý là các quan hệ trong cơ sở dữ liệu quan hệ Cho phép sử dụng các phép toán rút trích dữ liệu từ các quan hệ Tối ưu hóa quá trình rút trích dữ liệu Gồm có: Các phép toán đại số quan hệ Biểu thức đại số quan hệ 1. ĐSQH - Các phép toán ĐSQH, biểu thức ĐSQH • Có năm phép toán cơ bản: – Chọn ( ) Chọn ra các dòng (bộ) trong quan hệ thỏa điều kiện chọn. – Chiếu ( ) Chọn ra một số cột. – Tích Descartes ( ) Kết hai quan hệ lại với nhau. – Trừ ( ) Chứa các bộ của quan hệ 1 nhưng không nằm trong quan hệ 2. – Hội ( ) Chứa các bộ của quan hệ 1 và các bộ của quan hệ 2. • Các phép toán khác: – Giao ( ∩ ), kết ( ), chia ( / hay ÷), đổi tên ( ): là các phép toán không cơ bản (được suy từ 5 phép toán trên, trừ phép đổi tên). • Biểu thức đại số quan hệ: – Là một biểu thức gồm các phép toán ĐSQH. – Biểu thức ĐSQH được xem như một quan hệ (không có tên) – Kết quả thực hiện các phép toán trên cũng là các quan hệ, do đó có thể kết hợp giữa các phép toán này để tạo nên các quan hệ mới! π σ × − ∪ 1. ĐSQH - Phép chọn Biểu diễn cách 1 : σ σ (Quan hệ) (Điều kiện 1 ∧ điều kiện 2 ∧ ….) Cú pháp : Ngoài ra, có thể biểu diễn cách 2: σ (NhanVien) Câu hỏi 1: Cú pháp : (Quan hệ: điều kiện chọn) Câu hỏi 1: Phai=‘Nam’ (NhanVien: Phai=‘Nam’) NHANVIEN MANV HOTEN NTNS PHAI NV001 Nguyễn Tấn Đạt 10/12/1970 Nam NV002 Trần Đông Anh 01/08/1981 Nữ NV003 Lý Phước Mẫn 02/04/1969 Nam NHANVIEN MANV HOTEN NTNS PHAI NV001 Nguyễn Tấn Đạt 10/12/1970 Nam NV003 Lý Phước Mẫn 02/04/1969 Nam Kết quả phép chọn Câu hỏi 1: Cho biết các nhân viên nam ? 1. ĐSQH - Phép chọn Biểu diễn cách 1 : σ Biểu diễn cách 2: σ (NhanVien) (Phai=‘Nam’ ∧ Year(NTNS)>1975) (NhanVien: Phai=‘Nam’ ∧ Year(NTNS)>1975) NHANVIEN MANV HOTEN NTNS PHAI NV001 Nguyễn Tấn Đạt 10/12/1970 Nam NV002 Trần Đông Anh 01/08/1981 Nữ NV003 Lý Phước Mẫn 02/04/1969 Nam NHANVIEN MANV HOTEN NTNS PHAI Kết quả phép chọn Câu hỏi 2: Cho biết các nhân viên nam sinh sau năm 1975 ? (không có bộ nào thỏa) Câu hỏi 2: Câu hỏi 2: 1. ĐSQH - Phép chiếu Biểu diễn cách 1 : (Quan hệ) Cột1, cột2, cột 3, …. Cú pháp : Ngoài ra, có thể biểu diễn cách 2: (NhanVien) Câu hỏi 3 : Cú pháp : Quan hệ [cột1,cột2,cột3,…] Câu hỏi 3: HOTEN, PHAI NhanVien [HoTen, Phai] NHANVIEN MANV HOTEN NTNS PHAI NV001 Nguyễn Tấn Đạt 10/12/1970 Nam NV002 Trần Đông Anh 01/08/1981 Nữ NV003 Lý Phước Mẫn 02/04/1969 Nam Kết quả phép chiếu Câu hỏi 3: Cho biết họ tên nhân viên và giới tính ? π π π NHANVIEN HOTEN PHAI Nguyễn Tấn Đạt Nam Trần Đông Anh Nữ Lý Phước Mẫn Nam 1. ĐSQH - Phép chiếu Biểu diễn cách 1: Biểu diễn cách 2: Câu hỏi 4: (NhanVien: Phai=‘Nam’) [HoTen, NTNS] NHANVIEN MANV HOTEN NTNS PHAI NV001 Nguyễn Tấn Đạt 10/12/1970 Nam NV002 Trần Đông Anh 01/08/1981 Nữ NV003 Lý Phước Mẫn 02/04/1969 Nam Kết quả phép chiếu Câu hỏi 4: Cho biết họ tên và ngày tháng năm sinh của các nhân viên nam? π σ (NhanVien) (Phai=‘Nam’) Bước 1: Q Kết quả phép chọn (còn gọi là biểu thức ĐSQH) được đổi tên thành quan hệ Q Bước 2: (Q) π HOTEN, NTNS NHANVIEN HOTEN NTNS Nguyễn Tấn Đạt 10/12/1970 Lý Phước Mẫn 02/04/1969 1. ĐSQH - Phép tích Descartes Quan-hệ-1 Cú pháp : Câu hỏi 5: Tính tích Descartes giữa 2 quan hệ nhân viên và phòng ban × Quan-hệ-2 × PHONGBAN MAPH TENPH TRPH NC Nghiên cứu NV001 DH Điều hành NV002 NHANVIEN PHONGBAN × × …Quan-hệ-k Câu hỏi 5 được viết lại: Nam Nữ Nam 02/04/1969 01/08/1981 10/12/1970 NTNSHOTENMANV Nguyễn Tấn ÐạtNV001 Lý Phước MẫnNV003 Trần Ðông AnhNV002 NHANVIEN PHAI PHONG DH NC NC NHANVIEN X PHONGBAN MANV HOTEN NTNS PHAI PHONG MAPH TENPH TRPH NV001 Nguyễn Tấn Đạt 10/12/1970 Nam NC NC Nghiên cứu NV001 NV001 Nguyễn Tấn Đạt 10/12/1970 Nam NC DH Điều hành NV002 NV002 Trần Đông Anh 01/08/1981 Nữ DH NC Nghiên cứu NV001 NV002 Trần Đông Anh 01/08/1981 Nữ DH DH Điều hành NV002 NV003 Lý Phước Mẫn 02/04/1969 Nam NC NC Nghiên cứu NV001 NV003 Lý Phước Mẫn 02/04/1969 Nam NC DH Điều hành NV002 [...]... 2.1 Ngôn ngữ định nghĩa dữ liệu 1 Lệnh tạo bảng Cú pháp CREATE TABLE ( [not null], [not null], … [not null], khai báo khóa chính, khóa ngoại, ràng buộc ) 2.1 Ngôn ngữ định nghĩa dữ liệu Một số kiểu dữ liệu Kiểu dữ liệu SQL Server Chuỗi ký tự varchar(n), char(n),nvarchar(n), nchar(n) Số tinyint,smallint, int, numeric(m,n),... VẤN SQL, BAO GỒM: • Ngôn ngữ định nghĩa dữ liệu (Data Definition Language - DDL): cho phép khai báo cấu trúc bảng, các mối quan hệ và các ràng buộc • Ngôn ngữ thao tác dữ liệu (Data Manipulation Language - DML): cho phép thêm, xóa, sửa dữ liệu • Ngôn ngữ truy vấn dữ liệu (Structured Query Language – SQL): cho phép truy vấn dữ liệu • Ngôn ngữ điều khiển dữ liệu (Data Control Language – DCL): khai... TABLE KHACHHANG ADD GHI_CHU varchar(20) 2.2 Sửa kiểu dữ liệu thuộc tính ALTER TABLE tênbảng ALTER COLUMN têncột kiểud liệu_ mới • Lưu ý: Không phải sửa bất kỳ kiểu dữ liệu nào cũng được 2.1 Ngôn ngữ định nghĩa dữ liệu – Ví dụ: Sửa Cột Ghi_chu thành kiểu dữ liệu varchar(50) ALTER TABLE KHACHHANG ALTER COLUMN GHI_CHU varchar(50) – Nếu sửa kiểu dữ liệu của cột Ghi_chu thành varchar(5), mà trước đó đã nhập... thu hồi quyền khai thác trên cơ sở dữ liệu 2.1 Ngôn ngữ định nghĩa dữ liệu 1 Lệnh tạo bảng (CREATE) 3.1.1 Cú pháp 3.1.2 Một số kiểu dữ liệu 2 Lệnh sửa cấu trúc bảng (ALTER) 3.2.1 Thêm thuộc tính 3.2.2 Sửa kiểu dữ liệu của thuộc tính 3.2.3 Xoá thuộc tính 3.2.4 Thêm ràng buộc toàn vẹn 3.2.5 Xoá ràng buộc toàn vẹn 3 Lệnh xóa bảng (DROP) 2.1 Ngôn ngữ định nghĩa dữ liệu 1 Lệnh tạo bảng Cú pháp CREATE... nghĩa dữ liệu Create table CTHD ( SOHD int foreign key references HOADON(SOHD), MASP char(4) foreign key references SANPHAM(MASP), SL int, constraint PK_CTHD primary key (SOHD,MASP) ) 2.1 Ngôn ngữ định nghĩa dữ liệu 2 Sửa cấu trúc bảng 2.1 Thêm thuộc tính ALTER TABLE tênbảng ADD têncột kiểud liệu – Ví dụ: thêm cột Ghi_chu vào bảng khách hàng ALTER TABLE KHACHHANG ADD GHI_CHU varchar(20) 2.2 Sửa kiểu dữ. .. smalldatetime, datetime Luận lý bit 2.1 Ngôn ngữ định nghĩa dữ liệu Lược đồ CSDL quản lý bán hàng gồm có các quan hệ sau: KHACHHANG (MAKH, HOTEN, DCHI, SODT, NGSINH, DOANHSO, NGDK, CMND) NHANVIEN (MANV,HOTEN, NGVL, SODT) SANPHAM (MASP,TENSP, DVT, NUOCSX, GIA) HOADON (SOHD, NGHD, MAKH, MANV, TRIGIA) CTHD (SOHD,MASP,SL) 2.1 Ngôn ngữ định nghĩa dữ liệu Create table KHACHHANG ( MAKH char(4) primary key, HOTEN... chuỗi ký tự sang kiểu số, … 2.3 Xóa thuộc tính ALTER TABLE tên_bảng DROP COLUMN tên_cột – Ví dụ: xóa cột Ghi_chu trong bảng KHACHHANG ALTER TABLE NHANVIEN DROP COLUMN Ghi_chu 2.1 Ngôn ngữ định nghĩa dữ liệu 2.4 Thêm ràng buộc toàn vẹn UNIQUE tên_cột ALTER TABLE ADD CONSTRAINT PRIMARY KEY (tên_cột) FOREIGN KEY (tên_cột) REFERENCES tên_bảng (cột_là_khóa_chính) CHECK (tên_cột . tượng xử lý là các quan hệ trong cơ sở dữ liệu quan hệ Cho phép sử dụng các phép toán rút trích dữ liệu từ các quan hệ Tối ưu hóa quá trình rút trích dữ liệu Gồm có: Các phép toán. Cơ sở dữ liệu ĐẠI HỌC CÔNG NGHỆ THÔNG TIN Giảng viên: ThS. Nguyễn Thị Kim Phụng Email: phungntk@uit.edu.vn Nội. hệ Biểu thức đại số quan hệ 1. ĐSQH - Các phép toán ĐSQH, biểu thức ĐSQH • Có năm phép toán cơ bản: – Chọn ( ) Chọn ra các dòng (bộ) trong quan hệ thỏa điều kiện chọn. – Chiếu ( ) Chọn ra