Hệ quản trị Cơ sở dữ liệu - Chương 4: Ngôn ngữ vấn tin SQL (Structured Query Language)
Bạn đang xem 20 trang mẫu của tài liệu "Hệ quản trị Cơ sở dữ liệu - Chương 4: Ngôn ngữ vấn tin SQL (Structured Query Language)", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- he_quan_tri_co_so_du_lieu_chuong_4_ngon_ngu_van_tin_sql_stru.pdf
Nội dung text: Hệ quản trị Cơ sở dữ liệu - Chương 4: Ngôn ngữ vấn tin SQL (Structured Query Language)
- Chương 4: Ngôn ngữ vấn tin SQL (Structured Query Language) Ngôn ngữ thao tác dữ liệu (Data Manipulate Language - DML) Ngôn ngữ định nghĩa dữ liệu (Data Definition Language - DDL) Đặng Thị Kim Anh 1 Email: kimanh060282@gmail.com
- Ngôn ngữ truy vấn dữ liệu Ngôn ngữ thủ tục Đại số quan hệ SQL Ngôn ngữ phi thủ tục Phép tính quan hệ bộ Logical Phép tính quan hệ miền Schema QBE Sử dụng trong Access, giao diện đồ họa Datalog Cú pháp như Prolog 2
- CSDL Quản lý cho thuê đĩa phim Mô hình DL quan hệ trình bày dưới dạng đồ hoạ 3
- Giới thiệu SQL do IBM đề xuất và đã phát triển 1974: SEQUEL (Structure English Query Language) 1976: SEQUEL2 – Data definition, Manipulation, Control 1983: SQL (DB2) 1986: Database Language ISO 9075-1987 (DB2.1) 1989: Added Embedded SQL 1992: SQL-92, ISO/IEC 9075-1992 (DDL-DML extend) 1999: SQL-99, Object – Oriented feature Hiện nay là ngôn ngữ vấn tin quan hệ được sử dụng trong nhiều hệ thống CSDL thương mại 4
- Mô hình dữ liệu trong SQL SQL dựa trên phép toán tập hợp và quan hệ Kết quả là một quan hệ. Mô hình sử dụng Bảng là tập các dòng dữ liệu Mỗi một dòng trong bảng có cùng số cột và trên cùng các miền giá trị. Cho phép các dòng giống nhau Thứ tự các dòng lưu trữ không xác định Ngôn ngữ SQL gồm Ngôn ngữ định nghĩa dữ liệu – DDL Ngôn ngữ thao tác dữ liệu - DML 5
- Ngôn ngữ định nghĩa dữ liệu Dùng để định nghĩa các lược đồ trong CSDL Gồm 3 câu lệnh Tạo lược đồ: CREATE Xóa lược đồ: DROP Thay đổi cấu trúc lược đồ: ALTER Được áp dụng để tạo Bảng: Table Khung nhìn: View Miền: Domain Tập ký tự: Character set 6
- CREATE TABLE (1) Tạo cấu trúc bảng cơ sở trong CSDL Tạo bảng gồm Tên bảng: Table name Định nghĩa cột Tên cột: Field name Kiểu dữ liệu: Data type Ràng buộc trên cột: Column constraint Giá trị mặc định: Default value Ràng buộc trên bảng: Table constraint 7
- CREATE TABLE (2) Cú pháp CREATE TABLE Tên bảng ( Tên_cột Kiểu/độ_rộng DEFAULT Giá_trị [ NULL | NOT NULL] [ PRIMARY KEY | UNIQUE | [FOREIGN KEY] REFERENCES Tên_bảng(Tên_cột) ] [, Tên cột n ], [Ràng buộc bảng] ) Chú ý Giá trị mặc định của cột là NULL Ràng buộc trên nhiều cột → Ràng buộc bảng 8
- CREATE TABLE (3) Một số loại ràng buộc NOT NULL: trường không được phép để trống PRIMARY KEY: khóa chính ≈ NOT NULL và UNIQUE FOREIGN KEY: khóa ngoại, liên kết UNIQUE: có giá trị duy nhất DEFAULT: giá trị sẽ nhận khi người dùng không nhập vào trường đó CHECK: biểu thức điều kiện mà giá trị nhập vào trường đó phải thỏa mãn 9
- Ví dụ (1) 10
- Ví dụ (2) 11
- Ví dụ (3) 12
- Ví dụ (4) 13
- DROP TABLE 14
- ALTER TABLE 15
- Ngôn ngữ thao tác dữ liệu 16
- Câu lệnh truy vấn dữ liệu 17
- Mệnh đề SELECT 18
- Mệnh đề SELECT (tiếp) 19
- Mệnh đề SELECT (tiếp) 20
- Mệnh đề SELECT (tiếp) 21
- Mệnh đề FROM 22
- Nối tự nhiên 23
- INNER JOIN 24
- OUTER JOIN (1) 25
- OUTER JOIN (2) 26
- Mệnh đề WHERE 27
- Mệnh đề WHERE (tiếp) 28
- Mệnh đề WHERE (tiếp) 29
- Mệnh đề WHERE với giá trị Null 30
- Sắp xếp các bộ dữ liệu kết quả 31
- UNION (1) 32
- UNION (2) 33
- Ví dụ (1) 34
- Ví dụ (2) 35
- Hàm gộp nhóm (Aggregate functions) 36
- Hàm gộp nhóm (tiếp) 37
- Hàm gộp nhóm (tiếp) 38
- Mệnh đề GROUP BY 39
- Mệnh đề GROUP BY (tiếp) 40
- Mệnh đề GROUP BY (tiếp) 41
- Mệnh đề HAVING 42
- Mệnh đề HAVING (tiếp) 43
- WHERE hay HAVING ? 44
- Câu lệnh SELECT đầy đủ 45
- Định lượng một câu SQL 46
- Câu lệnh lồng nhau (lồng trong phần SELECT).1 47
- Câu lệnh lồng nhau (lồng trong phần SELECT).2 48
- Câu lệnh lồng nhau (lồng trong phần FROM).1 49
- Câu lệnh lồng nhau (lồng trong phần FROM).2 50
- Câu lệnh lồng nhau (lồng trong phần WHERE).1 51
- Câu lệnh lồng nhau (lồng trong phần WHERE).2 52
- Câu lệnh lồng nhau (lồng trong phần WHERE).3 53
- Câu lệnh lồng nhau (lồng trong phần WHERE).4 54
- Câu lệnh lồng nhau (lồng trong phần Having).1 55
- Thao tác khác trên dữ liệu 56
- INSERT 57
- INSERT (tiếp) 58
- UPDATE 59
- UPDATE(tiếp) 60
- DELETE 61
- DELETE (tiếp) 62