11a1_mylove

New Member

Download miễn phí Giáo trình SQL và PL/SQL





Mục lục
Mục lục .3
1 Giới thiệu.6
1.1 Mục tiêu khoá học .6
1.2 Khởi động và thoát khỏi Oracle.6
1.2.1 Tại Server (Window NT) .6
1.2.2 Tại Client (Window 9x) .6
1.3 Giới thiệu ngôn ngữ SQL .7
1.3.1 Lịch sử phát triển của ngôn ngữ SQL .7
1.3.2 Chuẩn SQL .7
1.4 Các khái niệm trong CSDL.7
1.5 Danh sách rút gọn các đối tượng CSDL .8
1.6 Các lệnh SQL .8
1.7 Giới thiệu về ví dụ thực hành.9
1.7.1 Mô hình quan hệ dữ liệu.9
1.7.2 Mô tả dữ liệu.9
2 Lệnh truy vấn cơ bản .10
2.1 Lệnh truy vấn cơ bản.10
2.2 Các thành phần khác của mệnh đề SELECT.10
2.3 Giá trị Null.11
2.4 Lọc dữ liệu từ các row có cùng giá trị.11
2.5 Hiển thị cấu trúc bảng .12
2.6 Các lệnh của công cụ SQL*Plus.12
2.6.1 Các lệnh soạn thảo .12
2.6.2 Các lệnh về file.13
2.6.3 Các lệnh về column.13
2.7 Bài tập.14
3 Truy vấn dữ liệu có điều kiện .16
3.1 Mệnh đề ORDER BY .16
3.2 Mệnh đề WHERE .16
3.3 Các toán tử .17
3.4 Bài tập.19
4 Các hàm áp dụng cho 1 dòng dữ liệu.20
4.1 Các hàm số.20
4.2 Các hàm ký tự .22
4.3 Các hàm ngày .26
4.4 Các hàm chuyển đổi kiểu.28
4.5 Bài tập.29
5 Biến runtime .31
5.1 Bài tập.32
6 Các hàm nhóm áp dụng cho lớn hơn hay bằng 1 dòng dữ liệu .32
6.1 Các hàm tác động trên nhóm .32
6.2 Mệnh đề GROUP BY .34
6.3 Bài tập.35
7 Hiển thị nội dung dữ liệu từ nhiều bảng .35
7.1 Mối liên kết tương đương .35
7.2 Mối liên kết không tương đương.35
7.3 Mối liên kết cộng.36
7.4 Liên kết của bảng với chính nó .36
7.5 Các toán tử tập hợp .36
7.6 Bài tập.37
8 Các lệnh truy vấn lồng nhau.39
8.1 Câu lệnh SELECT lồng nhau. .39
8.2 Bài tập.40
9 Cấu trúc hình cây.40
9.1 Cấu trúc hình cây trong 1 table .40
9.2 Kỹ thuật thực hiện .41
9.3 Bài tập.42
10 Tổng kết về lệnh select .44
11 Tạo table .44
11.1 Lệnh tạo bảng .44
11.2 Các quy tắc đặt tên object .46
11.3 Các quy tắc khi tham chiếu đến object.47
11.4 Kiểu dữ liệu và điều kiện .47
11.4.1 CHAR .47
11.4.2 VARCHAR2.48
11.4.3 VARCHAR.48
11.4.4 NUMBER.48
11.4.5 FLOAT.48
11.4.6 LONG .49
11.4.7 DATE.49
11.4.8 RAW và LONG RAW .50
11.4.9 ROWID .50
11.4.10 MLSLABEL.50
11.4.11 Chuyển đổi kiểu .50
11.5 Constraint.51
11.6 Bài tập.52
12 các lệnh DDL khác và dữ liệu trong từ điển dữ liệu.52
12.1 Chỉnh sửa cấu trúc table .52
12.2 Các lệnh DDL khác .53
12.2.1 Xóa table .53
12.2.2 Giải thích bảng .53
12.2.3 Thay đổi tên object.53
12.2.4 Xóa dữ liệu của table.53
12.3 Dữ liệu trong từ điển dữ liệu .54
12.4 Bài tập.54
13 Các lệnh Thao tác dữ liệu khác .55
13.1 Chèn một row vào table .55
13.2 Chỉnh sửa dữ liệu .55
13.3 Xóa dòng .55
13.4 Lỗi ràng buộc dữ liệu .56
13.5 Lệnh điều khiển giao dịch.56
13.6 Bài tập.57
14 Sequence và index.57
14.1 Sequence.57
14.1.1 Tạo Sequence.57
14.1.2 Xoá và sửa sequence .58
14.2 Index .58
14.3 Bài tập.59
15 Tạo view .59
15.1 View.59
15.2 Bài tập.61
16 Quyền và bảo mật .61
16.1 Quyền ư PRIVILEGE .61
16.2 ROLE.62
16.3 Synonym.63
17 tổng quan về pl/sql và procedure builder.63
17.1 Cú pháp lệnh PL/SQL .63
17.2 PL/SQL block .63
17.3 Giới thiệu Procedure builder.64
18 cú pháp lập trình .66
18.1 IF .66
18.2 LOOP và EXIT.66
18.3 FOR .67
18.4 WHILE .67
18.5 GOTO .67
19 cursor .68
19.1 Định nghĩa .68
19.2 Kiểu dữ liệu Table và Record.69
19.3 Sao kiểu dữ liệu .70
19.4 Câu lệnh SELECT. INTO. trong PL/SQL .70
19.5 Bài tập.70
20 procedure và funtion.71
20.1 Procedure .71
20.2 Function.72
20.3 Bài tập.73
21 pakage.73
21.1 Package .73
22 database trigger .74
22.1 Database Trigger.74
22.2 Bài tập.75
23 error handing .76
23.1 Bài tập.78



Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

ới 3,2,1 ký tự số
IYYY, IYY, IY, I Chỉ năm theo chuẩn ISO
SYEAR, YEAR Chỉ năm theo cách phát âm của ng−ời anh;
Q Quý trong năm
MM Giá trị tháng với 2 số (01-12)
MONTH Tên đầy đủ của tháng theo tiếng anh, đọ dài 9
MON Tháng với 3 ký tự viến tắt (JAN, FEB...)
WW, W Tuần trong năm hay trong tháng
DDD, DD, D Ngày trong năm, tháng hay tuần
DAY Chỉ thứ trong tuần
DY Chỉ thứ trong tuần với 3 ký tự viết tắt
J Ngày Julian; bắt đầu từ ngày 31/12/4713 tr−ớc công
nguyên
AM, Phần mềm Chỉ định sáng, chiều
HH, HH12 HH24 Chỉ giờ trong ngày (1-12) hay (0-23)
MI Phút (0-59)
SS Giây (0-59)
SSSSS Số giây đến nửa đêm (0-86399)
/ . , - đ−ợc tự động thêm khi đặt trong khuôn dạng
“char” Đoạn ký tự đặt trong nháy đúp đ−ợc tự động thêm khi đặt
trong khuôn dạng
TH Thêm phần thứ tự (1st, 2nd, 4th )
SP Phát âm số ( FOUR với DDSP)
Công ty cổ phần đầu t− phát triển công nghệ - FPT
Giáo trình SQL và PL/SQL
Đào tạo cơ bản: SQL và PL/SQL Trang 29
SPTH, THSP Phát âm và chuyển sang dạng thứ tự ( First, second,
...)
RR Ngày chuyển giao thiên niên kỷ với các năm <1999.
Năm
0-49 50-99
Năm hiện
tại
0-49 thế kỷ hiện
tại
Thế kỷ
sau
50-99 Thế kỷ tr−ớc
Thể kỷ
hiện tại
Một số khuôn dạng số

tự
Mô tả Ví dụ Kết quả
9 Xác định hiển thị 1 số 999999 1234
0 Hiển thị cả số 0 ở đầu nếu độ
dài khuôn dạng lớn hơn số
hiện có
099999 001234
$ Thêm ký tự tiền tệ $999999 $1234
L Thêm ký tự tiền tệ bản địa L999999 FF1234
. Dấu thập phân 999999.99 1234.00
, Dấu phân cách phần nghìn 999,999 1,234
MI Dấu âm ở bên phải ( với các
giá trị âm)
999999MI 1234-
PR Thêm ngoặc nhọn vào các giá
trị âm
999999PR
EEE Chuyển sang hiển thị số E 99.9999RRRR 1.234E+03
V Nhân với 10 n, n là số các số
9 đặt sau V
9999V99 123400
B Hiển thị cả giá trị 0 nếu =
0.
B9999.99 1234.00
4.5 Bài tập
1. Liệt kê tên nhân viên, mã phòng ban và l−ơng nhân viên đ−ợc tăng 15% (PCTSAL).
DEPTNO ENAME PCTSAL
---------- ---------- ----------
10 KING 5000
30 BLAKE 2850
10 CLARK 2450
20 JONES 2975
30 MARTIN 1250
30 ALLEN 1600
30 TURNER 1500
30 JAMES 950
30 WARD 1250
20 FORD 3000
20 SMITH 800
20 SCOTT 3000
20 ADAMS 1100
10 MILLER 1300
2. Viết câu lệnh hiển thị nh− sau:
EMPLOYEE_AND_JOB
--------------------
KING*******PRESIDENT
BLAKE********MANAGER
CLARK********MANAGER
JONES********MANAGER
MARTIN******SALESMAN
ALLEN*******SALESMAN
TURNER******SALESMAN
JAMES**********CLERK
WARD********SALESMAN
FORD*********ANALYST
Công ty cổ phần đầu t− phát triển công nghệ - FPT
Giáo trình SQL và PL/SQL
Đào tạo cơ bản: SQL và PL/SQL Trang 30
SMITH**********CLERK
SCOTT********ANALYST
ADAMS**********CLERK
MILLER*********CLERK
3. Viết câu lệnh hiển thị nh− sau:
EMPLOYEE
-----------------
KING (President)
BLAKE (Manager)
CLARK (Manager)
JONES (Manager)
MARTIN (Salesman)
ALLEN (Salesman)
TURNER (Salesman)
JAMES (Clerk)
WARD (Salesman)
FORD (Analyst)
SMITH (Clerk)
SCOTT (Analyst)
ADAMS (Clerk)
MILLER (Clerk)
4. Viết câu lệnh hiển thị nh− sau:
ENAME DEPTNO JOB
---------- ---------- ---------------
BLAKE 30 Manager
MARTIN 30 Salesperson
ALLEN 30 Salesperson
TURNER 30 Salesperson
JAMES 30 Clerk
WARD 30 Salesperson
5. Tìm ngày thứ 6 đầu tiên cách 2 tháng so với ngày hiện tại hiển thị ngày d−ới dạng 09 February 1990.
6. Tìm thông itn về tên nhân viên, ngày gia nhập công ty của nhân viên phòng số 20, sao cho hiển thị nh−
sau:
ENAME DATE_HIRED
---------- --------------------------
JONES april,SECOND 1981
FORD december,THIRD 1981
SMITH december,SEVENTEENTH 1980
SCOTT december,NINTH 1982
ADAMS january,TWELFTH 1983
7. Hiển thị tên nhân viên, ngày gia nhập công ty, ngày xét nâng l−ơng (sau ngày gia nhập công ty 1 năm),
sắp xếp theo thứ tự ngày xét nâng l−ơng.
ENAME HIREDATE REVIEW
---------- ---------- ----------
SMITH 17-12-1980 17-12-1981
ALLEN 20-02-1981 20-02-1982
WARD 22-02-1981 22-02-1982
JONES 02-04-1981 02-04-1982
BLAKE 01-05-1981 01-05-1982
CLARK 09-06-1981 09-06-1982
TURNER 08-09-1981 08-09-1982
MARTIN 28-09-1981 28-09-1982
KING 17-11-1981 17-11-1982
JAMES 03-12-1981 03-12-1982
FORD 03-12-1981 03-12-1982
MILLER 23-01-1982 23-01-1983
SCOTT 09-12-1982 09-12-1983
ADAMS 12-01-1983 12-01-1984
8.Hiển thị tên nhân viên và l−ơng d−ới dạng
Công ty cổ phần đầu t− phát triển công nghệ - FPT
Giáo trình SQL và PL/SQL
Đào tạo cơ bản: SQL và PL/SQL Trang 31
ENAME SALARY
---------- ------------
ADAMS BELOW 1500
ALLEN 1600
BLAKE 2850
CLARK 2450
FORD 3000
JAMES BELOW 1500
JONES 2975
KING 5000
MARTIN BELOW 1500
MILLER BELOW 1500
SCOTT 3000
SMITH BELOW 1500
TURNER On Target
WARD BELOW 1500
9. Cho biết thứ của ngày hiện tại
10. Đ−a chuỗi d−ới dạng nn/nn, kiểm tra nếu khúng khuôn dạng trả lời là YES, ng−ợc lại là no. Kiểm tra với
các chuỗi 12/34, 01/1a, 99\88
VALUE VALID?
----- -------
12/34 YES
11. Hiển thị tên nhân viên, ngày gia nhập công ty, ngày lĩnh l−ơng sao cho ngày lĩnh l−ơng phải vào thứ 6,
nhân viên chỉ đ−ợc nhận l−ơng sau ít nhất 15 ngày làm việc tại công ty, sắp xếp theo thứ tự ngày gia nhập
công ty.
5 Biến runtime
Dữ liệu thay thế trong câu lệnh
Dùng (&) để chỉ phần thay thế trong câu lệnh.
Nếu dùng (&&) chỉ biến thay thế thì sau câu lệnh biến thay thế vẫn còn tồn tại
Ví dụ
SELECT * FROM emp
WHERE &Condition
Enter value for condition: sal > 1000
Khi ấy câu lệnh trên t−ơng đ−ơng
SELECT * FROM emp
WHERE sal > 1000
Ví du 2:
Select ename, deptno, job
From emp
Where deptno = &&depno_please;
Lệnh Define
Khai báo và gán trị cho các biến, ví dụ khai báo biến condition có tri 'sal > 1000'
DEFINE condition = 'sal > 1000'
Khi đó câu lệnh sau không yêu cầu nhập vào giá trị cho codition
SELECT * FROM emp
WHERE &Condition
Công ty cổ phần đầu t− phát triển công nghệ - FPT
Giáo trình SQL và PL/SQL
Đào tạo cơ bản: SQL và PL/SQL Trang 32
Để loại bỏ biến ra khỏi bộ nhớ dùng lệnh UNDEFINE, ví dụ
UNDEFINE condition
Để liệt kê các biến đã khai báo dùng lệnh DEFINE mà không chỉ biến, ví dụ
DEFINE
DEFINE CONDITION = 'SAL > 1000'
Ví dụ:
DEFINE REM=’SAL*12+NVL(COMM,0)’
SELECT ENAME, JOB, &REM
FROM EKP ORDER BY & REM;
Lệnh Accept
Khai báo và gán trị cho biến với dòng hiển thị
ACCEPT variable [NUMBER/CHAR] [PROMPT/NOPROMPT 'text'] HIDE
Ví dụ
ACCEPT Salary NUMBER PROMPT 'Salary figure: '
Salary figure : 3000
Từ khoá hide cho phép che chuỗi nhập liệu, hay dùng khi nhập password.
ACCEPT password CHAR PROMPT 'Enter password: ' HIDE
Password : ******
5.1 Bài tập
1. Hiển thị tên nhân viên, ngày gia nhập công ty với điều kiện ngày gia nhập công ty nằm trong khoảng hai
biến runtime đ−ợc nhập vào từ bàn phím (&first_date, &last_date).
2. Hiển thị tên nhân viên, nghề nghiệp, l−ơng, mã giám đốc, mã phòng ban với điều kiện nghề nghiệp bằng
một biến đ−ợc nhập vào từ bàn phím. (&job)
3. Định nghĩa một biến tính thu nhập một năm của nhân viên. Dùng biến này để tìm những nhân viên có thu
nhập lớn hơn hay bằng $30000.
4. Định nghĩa một biến là khoảng thời gian nhân viên làm trong công ty. Hiển thị tên nhân viên và quãng thời
gian nhân viên đó làm việc với điều kiện nhân viên là một biến đ−ợc nhập vào từ bàn phím.
ENAME LENGTH OF SERVICE
---------- ---------------------
KING 19 YEAR 4 MONTHS
6 Các hàm nhóm áp dụng cho lớn hơn hay bằng 1 dòng dữ liệu
6.1 Các hàm tác động trên nhóm
Các hàm tác động trên nhóm các dòng dữ liệu tác động lên một tập hợp các các dòng dữ liệu. Gồm các
hàm:
AVG([DISTINCT/A...
 

Các chủ đề có liên quan khác

Top