MỤC LỤC
CHƯƠNG 1. GIỚI THIỆU CHUNG ... ...5
1.1. NGÔN NGỮ SQL ... ..5
1.1.1. Lịch sử phát triển của ngôn ngữ SQL ... .5
1.1.2. Chuẩn SQL ... ..5
1.2. CÁC KHÁI NIỆM CƠ BẢN TRONG CƠ SỞ DỮ LIỆU ... ...5
1.2.1. Các thành phần logic trong database... ..51.3. CƠ SỞ DỮ LIỆU THỰC HÀNH... ..7
1.2.2. Các đối tượng trong database ... ...6
1.2.3. Các nhóm lệnh SQL cơ bản ... .6
1.3.1. Mô hình dữ liệu ... ..7CHƯƠNG 2. LỆNH TRUY VẤN CƠ BẢN ... .9
1.3.2. Cấu trúc bảng dữ liệu ... .7
2.1. CÂU LỆNH TRUY VẤN ... ..9
2.1.1. Quy tắc viết lệnh ... ...92.2. SQL*PLUS, CÔNG CỤ TƯƠNG TÁC LỆNH SQL VỚI DATABASE ... ...112.1.2. Câu lệnh truy vấn cơ bản ... ..9
2.1.3. Các thành phần khác của mệnh đề SELECT ... ..9
2.1.4. Phân biệt giá trị dữ liệu trả về ... ..10
2.1.5. Giá trị NULL ... ..11
2.2.1. Câu lệnh tương tác của SQL*Plus ... .112.3. BÀI TẬP ... ..15
2.2.2. Phân nhóm câu lệnh trong SQL*Plus... ...12
2.2.3. Chi tiết các lệnh SQL*Plus cơ bản ... .13
CHƯƠNG 3. TRUY VẤN DỮ LIỆU CÓ ĐIỀU KIỆN ... ..17
3.1. CÁC GIỚI HẠN TRONG TRUY VẤN DỮ LIỆU ... ...17
3.1.1. Mệnh đề WHERE... ...173.2. SẮP XẾP DỮ LIỆU TRẢ VỀ... ..20
3.1.2. Các toán tử sử dụng trong mệnh đề WHERE ... ..18
3.1.3. Ví dụ sử dụng các toán tử điều kiện ... .19
3.2.1. Mệnh đề ORDER BY ... ...203.3. BÀI TẬP ... ..21
3.2.2. Sắp xếp nhiều cột dữ liệu trả về... ..20
CHƯƠNG 4. CÁC HÀM SQL ... ...23
4.1. TỔNG QUAN VỀ HÀM SQL... ..23
4.1.1. Cấu trúc hàm SQL ... .234.2. HÀM SQL THAO TÁC TRÊN TỪNG DÒNG DỮ LIỆU... .24
4.1.2. Phân loại hàm SQL ... ...23
4.2.1. Các hàm thao tác trên kiểu dữ liệu số... ..244.2.4. Các hàm chuyển đổi kiểu ... ...32
4.2.2. Các hàm thao tác trên kiểu dữ liệu ký tự... .26
4.2.3. Các hàm thao tác trên kiểu dữ liệu thời gian... .30
4.3. HÀM THAO TÁC TRÊN TẬP HỢP ... ...34
4.3.1. Các hàm tác động trên nhóm ... ...344.4. MỘT SỐ HÀM MỚI BỔ SUNG TRONG Oracle9i ... ..36
4.3.2. Mệnh đề GROUP BY ... ...35
4.4.1. Hàm NULLIF ... .364.5. BÀI TẬP ... ..36
4.4.2. Hàm COALSCE ... ..36
4.4.3. Câu lệnh case ... ..36
4.5.1. Hàm trên từng dòng dữ liệu ... ..36CHƯƠNG 5. LỆNH TRUY VẤN DỮ LIỆU MỞ RỘNG... .40
4.5.2. Hàm trên nhóm dữ liệu ... ...39
5.1. KẾT HỢP DỮ LIỆU TỪ NHIỀU BẢNG ... ...40
5.1.1. Mối liên kết tương đương ... ..405.2. LỆNH TRUY VẤN LỒNG ... ...43
5.1.2. Mối liên kết không tương đương ... .40
5.1.3. Mối liên kết cộng ... .40
5.1.4. Liên kết của bảng với chính nó (tự thân)... .41
5.1.5. Cách biểu diễn kết nối mới trong Oracle 9i ... ...41
5.1.6. Các toán tử tập hợp ... ..42
5.2.1. Câu lệnh SELECT lồng nhau. .. ...435.3. CẤU TRÚC HÌNH CÂY ... .44
5.2.2. Toán tử SOME/ANY/ALL/NOT IN/EXITS ... ..43
5.3.1. Cấu trúc hình cây trong 1 table ... ...445.4. BÀI TẬP ... ..46
5.3.2. Kỹ thuật thực hiện ... ..44
5.3.3. Mệnh đề WHERE trong cấu trúc hình cây... ..45
CHƯƠNG 6. BIẾN RUNTIME ... ...50
6.1. DỮ LIỆU THAY THẾ TRONG CÂU LỆNH ... .50
6.2. LỆNH DEFINE ... ..50
6.3. LỆNH ACCEPT ... ...51
6.4. BÀI TẬP ... ..51
CHƯƠNG 7. TABLE VÀ CÁC LỆNH SQL VỀ TABLE... ...52
7.1. LỆNH TẠO TABLE... 52
7.1.1. Cú pháp tạo bảng ... 527.2. MỘT SỐ QUY TẮC KHI TẠO TABLE ... 54
7.1.2. Tính toán kích thước table (tham khảo) ... 53
7.2.1. Quy tắc đặt tên Object ... 547.3. Các Kiểu dữ liệu cơ bản... 55
7.2.2. Quy tắc khi tham chiếu đến Object ... 54
7.3.1. Kiểu CHAR ... 557.4. RÀNG BUỘC DỮ LIỆU TRONG TABLE ... 59
7.3.2. Kiểu VARCHAR2 ... 55
7.3.3. Kiểu VARCHAR ... 56
7.3.4. Kiểu NUMBER ... 56
7.3.5. Kiểu FLOAT ... 56
7.3.6. Kiểu LONG ... 56
7.3.7. Kiểu DATE ... 57
7.3.8. Kiểu RAW và kiểu LONG RAW... 58
7.3.9. Kiểu ROWID ... 58
7.3.10. Kiểu MLSLABEL ... 58
7.3.11. Chuyển đổi kiểu ... 58
7.4.1. NULL/NOT NULL ... 597.5. LỆNH DDL CAN THIỆP TỚI TABLE ... 60
7.4.2. UNIQUE ... 59
7.4.3. PRIMARY KEY ... 59
7.4.4. FOREIGN KEY ( Referential ) ... 60
7.4.5. CHECK ... 60
7.5.1. Chỉnh sửa cấu trúc table ... 607.6. THÔNG TIN VỀ TABLE TRONG TỪ ĐIỂN DỮ LIỆU... ...62
7.5.2. Các lệnh DDL khác ... 61
7.5.3. Chú dẫn cho table ... 61
7.5.4. Thay đổi tên object... 62
7.5.5. Xóa dữ liệu của table ... 62
7.7. BÀI TẬP ... ..63
CHƯƠNG 8. CÁC LỆNH THAO TÁC DỮ LIỆU... ..64
8.1. THAO TÁC DỮ LIỆU TRONG TABLE ... .64
8.1.1. Thêm mới dòng dữ liệu ... ...648.2. LỆNH ĐIỀU KHIỂN GIAO DỊCH... ..66
8.1.2. Cập nhật dòng dữ liệu ... .65
8.1.3. Lệnh Merge... ...65
8.1.4. Xóa dòng dữ liệu... .66
8.1.5. Lỗi ràng buộc dữ liệu ... ...66
8.3. BÀI TẬP ... ..67
CHƯƠNG 9. SEQUENCE VÀ INDEX... ...68
9.1. SEQUENCE... ...68
9.1.1. Tạo Sequence... ..689.2. INDEX... ...69
9.1.2. Thay đổi và huỷ sequence ... .69
9.2.1. Tạo index ... ...69
9.2.2. Sử dụng index... ..69
9.3. BÀI TẬP ... ..70
CHƯƠNG 10. VIEWS ... ...71
10.1. VIEWS ... ...71
10.1.1. Tạo view ... ..7110.2. BÀI TẬP ... ...72
10.1.2. Xóa các view ... ..71
CHƯƠNG 11. QUYỀN VÀ BẢO MẬT ... ..73
11.1. QUYỀN - PRIVILEGE ... .73
11.2. ROLE... ..74
11.3. SYNONYM... ...74
CHƯƠNG 12. GIỚI THIỆU NGÔN NGỮ PL/SQL... ..76
12.1. TỔNG QUAN VỀ PL/SQL ... ...76
12.1.1. Cú pháp lệnh PL/SQL ... ...7612.2. LỆNH LẬP TRÌNH PL/SQL ĐƠN GIẢN ... ...77
12.1.2. Khối lệnh PL/SQL ... ...76
12.2.1. Lệnh IF... ..7712.3. GIỚI THIỆU CURSOR ... ...79
12.2.2. Lệnh lặp LOOP không định trước ... ...78
12.2.3. Lệnh lặp LOOP có định trước ... ...78
12.2.4. Lệnh lặp WHILE ... ...78
12.2.5. Lệnh GOTO, nhảy vô điều kiện ... .78
12.4. CÁC KIỂU DỮ LIỆU THÔNG DỤNG... ..81
1
2.4.1. Kiểu dữ liệu Table ... ...8112.5. BÀI TẬP ... ...83
12.4.2. Kiểu dữ liệu Record ... ...81
12.4.3. Sao kiểu dữ liệu một dòng ... ..82
12.4.4. Sao kiểu dữ liệu của một cột ... ..82
12.4.5. Lệnh SELECT... INTO... ...82
CHƯƠNG 13. GIỚI THIỆU PROCEDURE BUILDER ... ..84
13.1. CÁC THÀNH PHẦN TRONG PROCEDURE BUILDER ... ...84
13.1.1. Object Navigator ... ..8413.2. CÁC HÀM, THỦ TỤC ... .86
13.1.2. Program Unit Editor... .85
13.1.3. Store Program Unit Editor ... ...85
13.1.4. Database Trigger Edditor ... .85
13.2.1. Tạo hàm, thủ tục trên Client ... ...86CHƯƠNG 14. GIỚI THIỆU CÁC THỦ TỤC, HÀM VÀ PACKAGE ... ...88
13.2.2. Tạo hàm, thủ tục trên Server ... .86
13.2.3. Dò lỗi đối với các hàm, thủ tục ... ..87
14.1. THỦ TỤC ... ..88
14.1.1. Tạo thủ tục ... ..8814.2. HÀM ... ...89
14.1.2. Huỷ bỏ thủ tục ... ...89
14.1.3. Các bước lưu giữ một thủ tục ... ...89
14.2.1. Tạo hàm... ...9014.3. PACKAGE... ...92
14.2.2. Thực hiện một hàm ... .90
14.2.3. Lợi ích của việc sử dụng hàm ... ...91
14.2.4. Một số hạn chế khi sử dụng hàm trong câu lệnh SQL ... ..91
14.2.5. Huỷ bỏ hàm... .91
14.2.6. Hàm và thủ tục ... ..92
14.3.1. Cấu trúc của package ... ...92CHƯƠNG 15. DATABASE TRIGGER ... .97
14.3.2. Tạo package ... ..93
14.3.3. Huỷ package ... ..95
14.3.4. Lợi ích của việc sử dụng package ... ..95
14.3.5. Một số package chuẩn của Oracle ... ..96
15.1. TẠO TRIGGER ... ..97
15.1.1. Phân loại trigger ... ...9715.2. QUẢN LÝ TRIGGER ... ...100
15.1.2. Lệnh tạo trigger ... .98
15.1.3. Sử dụng Procedure builder để tạo trigger ... ...99
15.2.1. Phân biệt database trigger ... ...100PHỤ LỤC ... ...103
15.2.2. Thay đổi trạng thái của database trigger ... ...101
15.2.3. Huỷ bỏ trigger ... .101
15.2.4. Lưu ý khi sử dụng trigger ... ..102
A - TÀI LIỆU THAM KHẢO ... .103
B - DANH MỤC CÁC HÌNH VẼ... ..103

Chẳng thấy link down ở đâu cả
ReplyDelete